我有这样的消息表,其中包含以下示例值:
msg_id recipient_id read locked new
0 1 N Y Y
2 1 Y N N
好的,所以我们只想说这是一个消息传递表,我想重置所有发送给id = 1的收件人的邮件
我想知道为什么
UPDATE `messages` SET `new`='Y',`read`='N',`locked`='N' where `recipient_id`=1;
不起作用,MYSQL总是返回0个受影响的行... 有谁可以帮助我?
罗伯特赌博:是的,我确定这些值已经改变了,因为我更新查询的目的是重置我用于测试阶段的数据:D
答案 0 :(得分:4)
你有一些浮动的单引号。您可能正在将一个字符串分配给另一个或其他东西。
只需说出
即可UPDATE messages
SET new = 'y', read = 'N', locked = 'N'
WHERE recipient_id = 1