在阅读了一个答案和第二个答案以及sqlcmd 上的信息页后,我仍然无法使以下工作。
我正在尝试使用批处理文件中的 sqlcmd 将结果查询到 xml 文件中。
批处理文件如下所示:
sqlcmd -R -d DBName -i "c:\inputquery.sql" -h-1 -y 0 -o "c:\outputfile.xml"
简化的 sql 查询是:
:XML ON
SELECT '<?xml version="1.0" encoding="UTF-8"?>' +
CAST((
SELECT Columns FROM Table
FOR XML PATH ('Product'), ROOT('Products')
)
AS NVARCHAR(MAX))
输出是一个大约 1025Kb 的 xml 文件,带有一个截断的字符串。我认为它会截断为 1mb,但你怎么能防止这种情况呢?目标是将完整的查询结果放入 xml 文件中。据我所知,所有选项都已使用。顺便使用TSQL SSMS2008。