mysqlmysql-cli

MySQL Error 1064 with UPDATE, but query looks correct


Im not sure whats going on here

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)

Any ideas on how I can update the read column of the messages table?


Solution

  • You can try below - you need to use back tick `` as it's reserve keyword

    update messages set `read`=1 where id=4;