2011-11-10 66 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完成这项工作!谢谢! –

相关问题