数据库:如果存在则“更新”如果不存在则插入 [重复]
Posted
技术标签:
【中文标题】数据库:如果存在则“更新”如果不存在则插入 [重复]【英文标题】:Database : if exists 'update' if not exists insert [duplicate] 【发布时间】:2016-11-19 09:15:01 【问题描述】:如何编写 php 函数
如果 数据库查询中存在的行应该是更新 别的 插入查询
【问题讨论】:
【参考方案1】:您不必使用 php 来实现。您可以使用 ON DUPLICATE KEY 使用纯 SQL 语法来做到这一点:
查看mysql INSERT ... ON DUPLICATE KEY
如果您指定 ON DUPLICATE KEY UPDATE,并且插入的行会导致 UNIQUE 索引或 PRIMARY KEY 中的重复值,MySQL 将对旧行执行 UPDATE。例如,如果列 a 被声明为 UNIQUE 并且包含值 1,则以下两个语句具有相似的效果:
例子:
INSERT INTO table (id, name, age) VALUES(1, "A", 19) ON DUPLICATE KEY UPDATE
name="A", age=19
【讨论】:
以上是关于数据库:如果存在则“更新”如果不存在则插入 [重复]的主要内容,如果未能解决你的问题,请参考以下文章