1

谁能告诉我这个查询有什么问题:

INSERT `user` 
SET 
    `password` = SHA1('abc'), 
    `username` = 'admin'
ON DUPLICATE KEY UPADTE `password` = SHA1('abc')

结果是(MySQL 5.6.11):

SQL 错误 (1064):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以password在第 5 行的 'UPADTE = SHA1('abc')'附近使用正确的语法

但是我无法弄清楚我的语法有什么问题。来自 MySQL 手册:

INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
    [INTO] tbl_name
    SET col_name={expr | DEFAULT}, ...
    [ ON DUPLICATE KEY UPDATE
      col_name=expr
        [, col_name=expr] ... ]

来源:http ://dev.mysql.com/doc/refman/5.5/en/insert.html

谢谢!

4

1 回答 1

12

检查你的 UPDATE 在你的 sql 语句中的拼写。它应该是 UPDATE 而不是 UPADTE。

于 2013-05-03T11:22:02.440 回答