我正在構建一個PHP/MySQL應用程序,並且遇到了我的創建和更新查詢的問題。我有5列設置爲鍵入FLOAT也設置爲NULL列,我不打算在工作流程的後期填寫它們。這是什麼錯誤? 「數據庫查詢失敗:第1行的列'column_name'的數據被截斷
但是,我需要爲此數據庫創建新記錄,並且需要編輯現有記錄,而無需我使用OOP PHP,它使用標準的save()
方法來檢查對象中是否存在ID,如果不存在,則調用create()
,如果是,則調用update()
。好吧,通常。
update()
和create()
方法設計用於從每個Class頂部聲明的protected static $db_fields
屬性數組中提取屬性數組,該數組包含該表中使用的所有字段。相應地,update()
和create()
在SQL中通過該陣列並且INSERT INTO
或UPDATE
。
我的理解是,如果您使用''
(兩個單引號,空),SQL將跳過那些INSERT INTO
或UPDATE
請求,並將它們保留爲NULL。對於頁面上任何位置的5個浮動值,甚至沒有表單字段,所以當方法運行時,值將爲''
。
這就是爲什麼我得到「數據截斷」錯誤?這看起來不同 - 我之前沒有看到截斷的錯誤,這就是爲什麼我要來找你的天才。謝謝。
我的預感是,MySQL期望寫入FLOAT字段的值至少爲數字或NULL。你嘗試過使用NULL而不是''嗎? – jkndrkn 2009-11-09 22:25:52