MySQL UPDATE 错误 1064,但查询看起来正确
MySQL Error 1064 with UPDATE, but query looks correct
我不确定这里发生了什么
mysql> update messages set read=1 where id=4;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'read=1 where id=4' at line 1
mysql> show columns from messages;
+-------------------+---------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+---------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| account_id | varchar(255) | NO | | NULL | |
| subject | varchar(2048) | NO | | NULL | |
| message | text | NO | | NULL | |
| message_id | int(11) | NO | | 0 | |
| read | int(11) | NO | | 0 | |
| replied | int(11) | NO | | 0 | |
| priority | int(11) | NO | | 0 | |
| topic | int(11) | NO | | 0 | |
| user_deleted | int(11) | NO | | 0 | |
| created | datetime | NO | | NULL | |
| modified | datetime | NO | | NULL | |
| to_user_id | int(11) | NO | | 0 | |
| recipient_deleted | int(11) | NO | | 0 | |
| recipient_read | int(11) | NO | | 0 | |
+-------------------+---------------+------+-----+---------+----------------+
15 rows in set (0.00 sec)
关于如何更新消息的已读栏的任何想法table?
您可以在下面尝试 - 您需要使用反引号 `` 因为它是保留关键字
update messages set `read`=1 where id=4;
我不确定这里发生了什么
mysql> update messages set read=1 where id=4;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'read=1 where id=4' at line 1
mysql> show columns from messages;
+-------------------+---------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+---------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| account_id | varchar(255) | NO | | NULL | |
| subject | varchar(2048) | NO | | NULL | |
| message | text | NO | | NULL | |
| message_id | int(11) | NO | | 0 | |
| read | int(11) | NO | | 0 | |
| replied | int(11) | NO | | 0 | |
| priority | int(11) | NO | | 0 | |
| topic | int(11) | NO | | 0 | |
| user_deleted | int(11) | NO | | 0 | |
| created | datetime | NO | | NULL | |
| modified | datetime | NO | | NULL | |
| to_user_id | int(11) | NO | | 0 | |
| recipient_deleted | int(11) | NO | | 0 | |
| recipient_read | int(11) | NO | | 0 | |
+-------------------+---------------+------+-----+---------+----------------+
15 rows in set (0.00 sec)
关于如何更新消息的已读栏的任何想法table?
您可以在下面尝试 - 您需要使用反引号 `` 因为它是保留关键字
update messages set `read`=1 where id=4;