Sql 插入行-批量还是逐行插入?
我使用存储在文件中的数百万条insert语句将数据插入数据库。是逐行插入还是批量插入更好?我不确定其含义是什么。Sql 插入行-批量还是逐行插入?,sql,sql-server,bulkinsert,sql-insert,Sql,Sql Server,Bulkinsert,Sql Insert,我使用存储在文件中的数百万条insert语句将数据插入数据库。是逐行插入还是批量插入更好?我不确定其含义是什么。 对这个方法有什么建议吗?现在,我一次执行50K条语句。一般来说,如果您知道插入不会因某种原因(例如无效数据等)失败,那么批量插入会更好。如果要逐行进行,您要做的是打开数据连接,添加行,关闭数据连接。冲洗,在你的情况下重复数万次(或更多?)。与一次打开连接、一次转储所有数据,然后一次关闭连接相比,这是一个巨大的性能损失。如果您的数据不是一组干净的数据,那么最好逐行进行,因为如果您有需要
对这个方法有什么建议吗?现在,我一次执行50K条语句。一般来说,如果您知道插入不会因某种原因(例如无效数据等)失败,那么批量插入会更好。如果要逐行进行,您要做的是打开数据连接,添加行,关闭数据连接。冲洗,在你的情况下重复数万次(或更多?)。与一次打开连接、一次转储所有数据,然后一次关闭连接相比,这是一个巨大的性能损失。如果您的数据不是一组干净的数据,那么最好逐行进行,因为如果您有需要清理的数据,大容量插入不会失败 一般来说,如果您知道插入不会因为某种原因(例如无效数据等)而失败,那么批量插入会更好。如果要逐行进行,您要做的是打开数据连接,添加行,关闭数据连接。冲洗,在你的情况下重复数万次(或更多?)。与一次打开连接、一次转储所有数据,然后一次关闭连接相比,这是一个巨大的性能损失。如果您的数据不是一组干净的数据,那么最好逐行进行,因为如果您有需要清理的数据,大容量插入不会失败 您肯定应该使用批量插入,而不是逐行插入。批量插入是为将文本文件中的数据导入SQL Server而设计的过程中方法,它是在线文章中描述的其他方法中最快的方法您绝对应该使用批量插入,而不是逐行插入。批量插入是为将文本文件中的数据导入SQL Server而设计的过程中方法,它是在线文章中描述的其他方法中最快的一种如果您使用SSI,我建议将数据流任务作为另一种可能的途径。这将允许您从平面文本文件、SQL表或其他源中移动数据,并将其映射到新表中。我发现它的性能一直都很好,我经常使用它 如果在插入之前没有创建表,我要做的是使用表创建查询(创建表…等)将执行SQL任务函数拖到我的流程中,并更新数据流函数的属性以延迟验证 只要我的数据结构是一致的,这就行了。这里有几个截图
如果您正在使用SSI,我建议将数据流任务作为另一种可能的途径。这将允许您从平面文本文件、SQL表或其他源中移动数据,并将其映射到新表中。我发现它的性能一直都很好,我经常使用它 如果在插入之前没有创建表,我要做的是使用表创建查询(创建表…等)将执行SQL任务函数拖到我的流程中,并更新数据流函数的属性以延迟验证 只要我的数据结构是一致的,这就行了。这里有几个截图
另一种选择是使用批处理,在较小的记录集上使用基于集合的处理(例如每次5000条记录)。这可以防止服务器被完全锁定,并且一次比一条记录快 另一种选择是使用批处理,在较小的记录集上使用基于集合的处理(例如每次5000条记录)。这可以防止服务器被完全锁定,并且一次比一条记录快 你从哪里得到insert语句?平锉?加载整个文件,不要执行数以百万计的insert语句。@GoatCO-它实际上在SSIS(一种ETL工具)中。我想批量插入。但是,其他人希望逐行插入。大容量插入有时会导致内存不足错误。现在已经讲清楚了,我并不完全熟悉如何将数据从SSI内部传输到数据库,但如果有批量大小选项,您应该查找该选项,并将其设置为一次处理数百到数千条记录(取决于您认为服务器可以处理的内容)@user2366842-是的。但最终,sql server将运行这些语句。因此,我需要知道批量还是逐行对sql server更好。从哪里获得insert语句?一个平面文件?加载整个文件,不要执行数百万条insert语句。@GoatCO-它实际上在SSIS(一个ETL工具)中。我想使用批量Insert。但是,其他人希望逐行插入。大容量插入有时会导致内存不足错误。现在已经清楚了,我并不完全熟悉将数据从SSI内部传输到数据库的过程,但是如果有批量大小选项,您应该查找该选项,并将其设置为处理数百到数千条记录一开始(取决于您认为服务器可以处理的内容)@user2366842-是的。但最终,sql server将运行这些语句。因此,我需要知道批量或逐行插入是否更适合sql server。请参阅上面的答案。批量插入可能不是每个情况的正确选择。请参阅上面的答案。批量插入可能不是每个情况的正确选择。