【发布时间】:2018-02-16 09:15:01
【问题描述】:
生成 XML 时,我使用 XP-CMDSHELL 和 BCP。我的查询字符长度超过 4000 个字符。 Bcp 只考虑 4000 个字符。 请建议方法。 注意:查询不会在 sp 或 view 中转换
【问题讨论】:
-
能否添加您的
BCP脚本 -
如果你需要运行
bcp,你为什么要使用xp_cmdshell?只需从命令行或 SQL Server 代理作业执行bcp。此外,什么样的查询需要 4000 个字符?这不再是批量复制,而是数据生成和导出。您可能应该使用该查询创建一个视图或存储过程。更好的是,使用 SSIS 而不是 bcp 以您喜欢的任何格式导出数据。BCP意在做顾名思义 - 批量复制。它的格式有限,不支持处理 -
然后做一些不会产生超过 4K 的查询的事情。很难提出什么建议,因为您对您正在尝试做的事情的细节很了解,但几乎可以肯定有更好的方法。
-
你必须展示更多你当前的方法......一个建议可能是将中间结果存储在临时表中以缩短 BCP 查询的代码。
-
当前的 sql 查询有太多的 xml 标签,这就是为什么我的查询是 6000 个字符长。查询不会减少,因为它有太多的验证。
标签: sql-server bcp xp-cmdshell