日期:2014-05-16  浏览次数:20866 次

关于MySQL的concat函数的一个
SQL语句为:

$sql   =   "update   tablename   set   column1=concat(column1,   '$aVar ')   where   some_conditions ";

其中,column1的类型是text   not   null。


如果第一次插入时,即column1的值是空的时,执行完上述语句后,插入的值不正确,是$aVar$aVar,即重复了一次(大部分情况下是这样,有时也偶尔正确,即插入的是$aVar,没有多余的重复);
如果不是第一次插入,即column1的值非空时,没有问题。

请问,这是怎么回事呢?怎么解决呢(我不想事先先select出column1判断是否为空)?

------解决方案--------------------
column1的类型是text not null ,那么column1的值是空的 ,为什么会这样?


你这样 concat( ' ',column1, '$aVar ') 看看行不行