问题标签 [upsert]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 插入mysql数据库,如果记录已经存在,则更新
如何插入mysql数据库,如果记录已经存在,那么更新...我知道这个页面上有一个解决方案:http: //dev.mysql.com/doc/refman/5.1/en/insert-on-duplicate .html
同胞表
如果我想在这个表中添加另一个兄弟姐妹,sql 会是什么。
redis - 如何在 Redis 中更新(替换)操作?(作为流水线)
更新插入(替换)
- 如果存在则更新
- 如果不存在则插入
(使用主键作为流水线)
sql - 在 SQL Server 中不合并的情况下 Upsert 5000+ 行的最有效/最佳实践是什么?
我有一个每秒接收大约 50 次点击的 Web 应用程序,每次点击时,我都会在中央 SQL Server 数据库中插入大约 10 条记录。大约每 3 秒一次,我为单个入站连接插入 5000 多行。
目前我有一个以 XML 作为参数的存储过程。我从我的 XML 中插入一个行字段不匹配的主表,然后用我的 XML 中的值更新整个表。
无论如何,操作并不慢,但我真的很想知道最好的方法。我在 SQL Server 2005 上运行,所以我没有 MERGE 操作。
mysql - 如何执行 UPSERT 以便我可以在更新部分同时使用新值和旧值
愚蠢但简单的例子:假设我有一个表“项目”,我在其中保存收到的项目的总数。
项目名称是这里的主键。当我收到数量 X 的物品 A 时,如何实现以下目标。
如果该项目不存在,我为项目 A 插入一个新记录并将库存项目设置为 X,如果存在库存项目为 Y 的记录,则库存项目的新值为 (X + Y)
我的问题是我的实际表中有多个列。在更新部分编写多个选择语句是个好主意吗?
当然我可以在代码中做到这一点,但有更好的方法吗?
sql - 将 MERGE INTO 与 Scope_IDENTITY 一起使用
当Merge into
使用insert
以下语句时,Scope_Identity
返回正确的代理键信息。但是,当update
两者都执行Scope_Identity
并@@Identity
返回下一个可用的代理键时。当我添加 时,我在和output
上都得到了一个空值。update
insert
如何在update
和上返回代理键insert
?
sql - 在 MS-access 中更新插入
我需要为 MS-Access 2000 编写一个 SQL 查询,以便在存在时更新行,如果不存在则插入。(我相信这被称为“upsert”)
IE
如果行存在...
如果它不存在...
这可以在一个查询中完成吗?
php - 如果数据存在则如何更新否则插入新数据(多行)
我需要创建一个插入和更新语句,当今天的日期不在数据库中时,它将插入,否则它将更新从今天开始的数量(来自 excel [这部分我已经完成])。
但是,有很多行需要插入和更新。
1)它将检查数据库中的最后4天,如果不包括今天,它将只插入今天的数据并更新最后3天的数据。另一方面,如果包含今天它只会更新。
PS:我曾尝试使用INSERT... ON DUPLICATE KEY UPDATE
,但只有 1 行受到影响。
if else 语句,当我使用它时,它只插入一行数据,其余的只是进行更新。
可以给我一些建议或例子。
c# - UPSERT 进入具有动态表名的表
提供任何更好的将 UPSERT 插入表格的方法:
- 以 ~1 行/秒的速度插入数据
- 表名是动态的,使用传递给它的 ObjectID 参数生成
以下过程抛出:“ORA-00942:表或视图不存在”
- 显然 MERGE 不起作用,因为 TableName 不能是动态的???
- 我是一个新手,我的第三个月的编码,我通过 STACKOVERFLOW 和谷歌搜索了 3 天,尝试了各种有趣和绝望的解决方案......如果你找到一个非常相关的链接,我将不胜感激。
drupal - Drupal 7 DBTNG:使用 db_merge() 时如何检索最后一个 INSERT id
使用 db_merge 时,如果进行了 INSERT,则似乎无法检索最后一个插入 ID。
如果进行了插入,则 MergeQuery::execute() 返回 MergeQuery::STATUS_INSERT,而不是像 InsertQuery::execute() 那样返回插入 ID。
使用 db_merge 时是否有一种优雅的方法来检索最后一个插入 ID?
资料来源: http : //api.drupal.org/api/drupal/includes--database--query.inc/function/MergeQuery%3A%3Aexecute/7 http://api.drupal.org/api/drupal/includes --database--query.inc/function/MergeQuery%3A%3Aexecute/7
deadlock - SQL Server 2008 R2 中的死锁
服务器:SQL Server 2008R2 客户端:Excel/ADO - 8 个客户端 服务器硬件:8 核/16GB 内存/操作系统:WinServer 2008SR2
插入/更新和合并/匹配存储过程都发生死锁。
我在这里阅读了很多关于插入/更新的内容,因此,我已将插入/更新更改为合并/匹配,但我仍然收到非常频繁的死锁错误(大约每 10 分钟一次)来自运行的 8 个客户端批处理模式要求以每分钟 2 次的速率进行更新。
相比之下,每个客户端每分钟向另一个表插入大约 20,000 个项目,完全没有问题。
我希望在解决这些死锁问题方面得到一些帮助,因为我认为这样一个微不足道的 8 个客户端(尤其是 Excel/ADO/VBA)应该能够对这个数据库施加压力!
另请注意,我不直接通过客户端发出任何 SQL 命令,所有 sql 命令都是通过存储过程调用的。
我现在的SP: