我最近发现了MYSQL函数REPLACE INTO
,所以与INSERT INTO
,UPDATE
相比,它得到了滚动。我应该何时使用REPLACE INTO
而不是其他使用的REPLACE INTO
功能?
何时可以使用替换为Update into
我当前更新的标准程序是:
我的插入的标准程序是
总的来说。 UPDATE
vs {{1}}。什么时候可以接受,利弊?
答案 0 :(得分:3)
替换旨在简化以下情况:
根据文件,REPLACE等同于INSERT,除了删除之前已删除PK的任何现有记录。
答案 1 :(得分:0)
REPLACE INTO
最好被视为条件插入。它将查看要插入的记录的主要/唯一键,如果其中一个唯一键已存在,它将更新现有记录的值而不是插入。此更新是通过删除旧行并插入新行数据来完成的。
实际上,这样做可以让你在尝试插入之前不必检查某个主/唯一密钥是否已经存在(这通常会导致错误)。
答案 2 :(得分:0)
如果您想在发生类似情况时向用户提供错误,请转到您所描述的方法2!否则,如果数据库中已存在并且您只想替换记录无关紧要,请使用您描述的第一种方法!