如何使用for xml路径查询结果阻止sqlcmd截断

  发布于 2023-01-08 11:15

在读完一个答案和第二个答案以及sqlcmd上的infopage之后,我仍然无法让以下工作.

我试图使用批处理文件中的sqlcmd将结果查询到xml文件中.

批处理文件如下所示:

sqlcmd -R -d DBName -i "c:\inputquery.sql" -h-1 -y 0 -o "c:\outputfile.xml"

简化的SQL查询是:

:XML ON
SELECT '' +
CAST((
SELECT Columns FROM Table
FOR XML PATH ('Product'), ROOT('Products')
) 
AS NVARCHAR(MAX))

输出是一个大约1025Kb的xml文件,一个截断的字符串.我认为它截断到1mb,但你怎么能阻止这个呢?目标是将完整的查询结果放入xml文件中.据我所知,所有选项都已使用.顺便使用TSQL SSMS2008.

1 个回答
  • 我今天遇到了同样的问题,我使用了-y0选项.我的输出现在看起来正确.以为我会发布我的发现,所以它可能会帮助其他人遇到同样的事情.

    sqlcmd -Sxxxxxxx -E -dmaster -h-1 -y0 -Q" my query that produces long results in here;" > "D\:out.txt"
    

    -h-1 也删除列标题.

    2023-01-08 11:16 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有