每天都有一个从SQL Server数据库生成XML文件的过程。
在内部,它是作为存储过程中包含的一系列嵌套“ FOR XML ...”查询实现的。 Powershell脚本执行存储过程并处理输出。
最近,由于SQL Server中对XML数据类型大小的硬限制,存储过程生成的数据量超过2 GB,并且该进程死亡。
我的问题是,绕过该限制的最佳方法是什么?显然,在SQL Server中使用XML数据类型是不行的,但我想人们会以某种方式做从SQL Server数据库中生成大型XML文件。
答案 0 :(得分:1)
请在命令提示符下对其进行调整以在您的环境中进行测试。它正在使用Windows身份验证。
"c:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\bcp.exe" "EXEC DBNAME.dbo.usp_name;" queryout "e:\Temp\XMLOutput.xml" -T -x -c -C 1252 -a 32768 -S "DBServerName,1433"