【问题标题】:is there `on duplicate key insert` in MYSQL?MYSQL 中是否有“重复键插入”?
【发布时间】:2018-05-30 03:34:52
【问题描述】:

我正在学习MySQL,使用了ON DUPLICATE KEY UPDATE,这是做什么的,如果我没记错的话,当它发现重复时;它将更新该行。那么,对于我的问题,有没有像ON DUPLICATE KEY INSERT 这样的东西?比如发现重复,还是会往表中插入数据?

【问题讨论】:

  • “insert ... on duplicate key”触发“更新”行无法插入到数据库中,因为添加行的尝试违反了唯一键约束。如果您的意思是如果 INSERT 引发重复键异常,您希望使用不会违反 UNIQUE 约束的不同值自动重试 INSERT,那么不,没有内置的 MySQL 功能可以做到这一点。

标签: mysql unique-constraint


【解决方案1】:

不,无法在限制重复值的列中插入具有重复值的行。如果可以,结果将是数据库处于违反其自身约束的状态。

您必须删除表上的任何唯一键或主键约束,以允许相应列中的重复。

【讨论】:

  • 我是Mysql数据库设计专家,我会说你是绝对正确的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-01-31
  • 1970-01-01
  • 1970-01-01
  • 2012-07-14
  • 2023-03-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多