2011-11-10 85 views
0

不知道爲什麼它的發生:的mysql:更新記錄給「截斷不正確DOUBLE值」錯誤

mysql_query("update items set photoids=photoids+',$newphotoid' where id='$row[id]'"); 

photoids細胞最初是空的,但命令正在經歷的週期,通過SCANDIR photoids紅色填充() 。

$ newphotoid肯定存在,並且總是唯一的以及$ row [id]。

完全丟失。請幫忙!

回答

4

photoids字段的字段類型是什麼?現在看來你試圖通過向它添加多個逗號分隔值來爲該字段分配一個STRING。如果它是一個float/double字段,那麼這個「字符串」值將被截斷/無效。

例如,如果photoids是浮動,幷包含 「3.14159265」,那麼你正在試圖做

photoids = photoids + ',1234567' 
photoids = 3.14159265 + ',1234567' 
photoids = 3.14159265 + 0 

導致:

photoids = 3.14159265 
+0

這是VARCHAR(100)utf8_unicode_ci –

+2

嘗試做'然後,用photoids = CONCAT(photoids,',',$ newphotoid)'。 MySQL不使用'+'來連接。 –

+0

CONCAT完成這項工作!謝謝! –

相關問題