FOR XML PATH长度超过2033截断的问题

SQLServer可以将数据集转换为xml,特别适用于多行转一行或者数据处理的场景,效率都相当的不错。

SELECT * FROM [dbo].[Test] FOR XML PATH('R');

但是需要注意利用Stuff函数将生成的xml文件转换为字符串,否则用SqlDataReader读取数据只能读取2033个字符。

此时要:SELECT STUFF((SELECT * FROM [dbo].[Test] FOR XML PATH('R')),1,0,'');

利用Stuff函数将xml文件转换为一个字符串字段,就不会截断。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容