使用CONCAT函数添加到mysql列中的现有值?

时间:2013-02-11 15:50:59

标签: mysql sql sql-update

尝试使用mysql的concat函数将文本添加到mysql中的现有值?

所以现有的值现在是'john',并且在函数运行之后将是'johnewvalue'

我正在尝试添加一段文字':回复'到我的数据库ptb_messages中我的主题列中的现有文本。

我正在尝试使用mysql的concat函数执行此操作,但是我没有得到任何结果。

$sql = mysql_query("UPDATE ptb_messages SET subject = CONCAT subject, 'newvalue' WHERE id='".$message_id."'"); 

有人可以告诉我一种方法来让它做我想要的。感谢。

1 个答案:

答案 0 :(得分:20)

应该是

UPDATE ptb_messages 
SET subject = CONCAT( subject, 'newvalue')
WHERE ... 
PHP中的

$sql = mysql_query("UPDATE ptb_messages SET subject = CONCAT(subject, 'newvalue') WHERE id='".$message_id."'"); 

作为旁注,如果变量的值( s )来自外部,则查询易受SQL Injection攻击。请查看下面的文章,了解如何防止它。通过使用PreparedStatements,您可以摆脱在值周围使用单引号。