SQL Server – 运行大型脚本文件

我有一个开发服务器上的数据库表,现在完全填充后,我设置它运行一个包含140万行的CSV文件的导入例程。

我在表上运行了数据库发布向导,现在我的本地机器上有一个286MB的SQL脚本。 问题是,我不知道如何运行它。 如果我将它加载到SQL Server Management Studio Express中,我会看到一个警告窗口,提示“操作无法完成”。

关于如何让这个SQL脚本运行的任何想法?

在单个事务中运行一些大事情并不是一个好主意。 因此,我build议将文件拆分成更小,更易于pipe理的块。

另一个select是查看其他一些直接导入CSV数据的方法。

使用sqlcmd工具来执行文件..

sqlcmd -S myServer\instanceName -i C:\myScript.sql 

CodePlex上的这个工具( Big SQL Script File Runner )将运行任何大小的脚本文件,包含日志和GUI。

添加到Gulzar Nazim的答案:如果仍然失败,请尝试使用选项-f指定SQL文件的代码页 :

sqlcmd -S myServer\instanceName -d databaseName -i C:\myScript.sql -f 65001

我试图从SQLite中导入.dump文件(默认情况下是UTF-8),而sqlcmd在遇到第一个特殊字符后一直抛出一个错误。 -f 65001为我修好了。

为什么不直接使用DTS直接导入CSV文件?