我有一种情况,例如我需要运行SQL选择查询以使用BCP实用程序将数据导出到CSV文件,要实现此目的,我创建了一个批处理文件并从命令提示符下运行此批处理文件。当我以较少的代码行(例如50,60)作为批处理文件的参数传递SQL查询时,它运行完美,但是当我尝试以300行以上的代码传递SQL查询时,它的抛出错误(如输入行太长且命令语法不正确,有人可以帮助我解决此问题吗?
谢谢, 拉古
答案 0 :(得分:1)
尝试调用sql命令行执行工具之一。 isql,osql,sqlcmd。如果我正确地使用了这些命令,这些命令将允许您将文件作为查询的参数传入。您可以绕过DOS cmdshell参数大小的限制。似乎肯定是正在发生的事情。只需创建一个DOS批处理文件来执行isql / osql或sqlcmd(isql / osql只是较旧的版本。SQLCMD是最新的。不确定您使用的SQL Server版本。