php - MySQL ON 重复键语法错误

标签 php mysql

我正在尝试通过 PHP 使用“ON DUPLICATE KEY”查询。这是它的样子

INSERT INTO `application`.`invites` (`from`, `to`) VALUES ('123', '321') ON DUPLICATE KEY UPDATE `from`=VALUES(from), `to`=VALUES(to)

我做错了什么?

#1064 - 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 'from), `to`=VALUES(to)' at line 1 

最佳答案

您需要在 fromto 周围加上反引号,无论您在哪里使用它们:

INSERT INTO `application`.`invites` (`from`, `to`)
    VALUES ('123', '321')
    ON DUPLICATE KEY UPDATE `from` = VALUES(`from`), `to` = VALUES(`to`)

事实上,这些对于列来说都是非常糟糕的名称。您应该避免使用保留字作为列名。

关于php - MySQL ON 重复键语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30134814/

相关文章:

php - laravel 5.1 图片显示不正确

mysql - 如何计算另一个表的行数以影响另一个表

javascript - 找不到类 'NunoMaduro\Collision\Adapters\Laravel\CollisionServiceProvider'

php - PDO SQL-state "00000"但仍然出错?

mysql - 获取具有相似声音的记录

Mysql 子查询 - 需要在两个类似查询之间建立连接以计算邮政编码和邮政编码的出现次数

php - 用零填充数组

php - ajax 更新观看次数时出现问题

php - Pusher 不在私有(private) channel 上广播 -PHP/Laravel

php - ffmpeg 从 cropdetect 获取值