我知道过去有人问过这个问题,但我需要更具体地了解网络的性能。
我需要通过网络同时发送 1 到 100 行,我需要一个具体的答案来确定哪种方法更适合我的情况。另外,如果许多客户端将同时运行此查询,哪种方法更合适?
对我的项目来说更重要的是执行速度。
在我的结果中,没有区别。 Α 多值插入快一点,执行速度快一点。但是我需要知道是否有任何陷阱或我需要为这些查询防止的东西。
提前谢谢你。
例子
INSERT INTO Customers (Name, Age, Active) ('Name1',21,1)
INSERT INTO Customers (Name, Age, Active) ('Name2',21,1)
对比
INSERT INTO Customers (Name, Age, Active) ('Name1',21,1),
('Name2',21,1)
我忘了说它们是简单的插入。
最佳答案
一次插入与多次插入:
- 一次
insert
会快一点,因为查询只需要解析一次。 - 如果每个语句都是独立提交的(默认设置),那么单个
insert
会快得多,因为它只有一次提交。 - 如果一条记录插入失败,则所有记录都将在一次
插入
中失败。对于多个插入,有些可能会成功 (. - 表上的插入触发器应构建为同时处理多行。这是评论,但不会影响性能。
我的猜测是,在您的情况下,性能差异非常小,但值得衡量。如果您同时有很多行并且您的表结构包含多个索引,这可能会变得很重要。
关于sql - 多个插入与具有多个值的一个插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51369170/