gpt4 book ai didi

mysql - 什么时候使用 INSERT IGNORE 好习惯?

转载 作者:行者123 更新时间:2023-11-29 06:48:06 31 4
gpt4 key购买 nike

在我生活的世界中,构建一个将所有飞镖都扔到墙上的解决方案,并希望其中一些能命中靶心是一种非常糟糕的解决方案方法。

那么,我的问题出现了,什么时候在约定可接受的生产系统中使用 INSERT IGNORE

我想写一个 TRIGGER(参见 #17353080)来搜索现有数据,如果找不到,则将其INSERTed。建议使用 INSERT IGNORE 并依赖唯一字段的 primary keying

所以,我有一个困境:

  1. 我是否使用 INSERT IGNORE 并依赖于 primary keying 我想保持唯一性的字段,使任何重复的 INSERT 失败
  2. 我是否重复查询目标表以检查是否存在我想保持唯一性的字段值,如果不存在则INSERT

由于这些问题在这个特定的媒体中太模糊了,我想了解什么时候可以按照惯例使用 INSERT IGNORE,我可以根据我的具体情况做出自己的判断。

谢谢,

马特

元:

我认为,因为 conventions 是一个描述为的现有标签:

A generic tag covering any accepted method of doing things, which could include naming, spacing, coding, commenting, etc.

这种类型的问题是可以接受的。

最佳答案

从逻辑上讲,我会说这取决于您在失败时需要做什么。

如果您只是执行批量插入并且不关心该值是否已经在表中 - 只要它保持唯一 - 那么 INSERT IGNORE 是明智的。顾名思义,您乐于忽略任何未插入的内容

如果您需要对失败的插入执行某些操作,例如建议您的用户,则有必要执行单独的检查。

然而,最重要的问题是:“为什么值已经在表中了?”

关于mysql - 什么时候使用 INSERT IGNORE 好习惯?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17382339/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com