是否可以在批处理sql脚本中运行最大数量的插入?

时间:2011-05-14 22:39:16

标签: sql batch-file

我有一系列简单的"Insert INTO"类型语句但是在运行了大约3或4个语句之后,当我尝试从相应的表中进行选择时脚本停止并且我得到空集....除了我的特定代码...我想知道是否有一种运行多种插入类型查询的理想方式。

现在我只有一个txt文件保存为.sql,正常sql命令以";"分隔

2 个答案:

答案 0 :(得分:2)

不,没有。但是,如果它在3或4次插入后停止,那么在第3或第4次插入时出现错误是一个不错的选择。根据您使用的SQL引擎,有不同的方法可以在操作期间和之后报告错误。

此外,如果你有很多插入,最好将它们包装在一个事务中 - 这基本上会缓冲所有的insert命令,直到它看到事务的end命令,然后将所有内容提交到你的表中。这样,如果出现问题,您的数据库不会受到需要首先再次删除的数据的污染。更重要的是,没有事务的每个插入都算作单个事务,这使得它们非常慢 - 在事务中执行100次插入可以像执行两次或三次普通插入一样快。

答案 1 :(得分:1)

Maximum Capacity Specifications for SQL Server

最大批量大小= 65,536 *网络数据包大小

但我怀疑Max Batch尺寸是你的问题。