繁体   English   中英

在SQL Server 2012中创建XML文件

[英]Create XML File IN SQL Server 2012

我有一个存储过程,应该根据表中的可用数据生成一个XML文件。 如果所有字段中都有数据,则可以正常工作。 但是,如果一个或多个字段中没有日期,则不会创建xml。 它返回null。 我开始对其进行调试,发现@ part1具有正确的值,part2具有正确的值,part3具有正确的值。 连接它们后,我注意到part1现在为空。 我在这里想念什么?

select @part1 = '<Students>';

            @part2 ='<NumberOFCourse>'+isnull(convert(varchar,(select NumberOFCourse from Courses)), 0)+'</NumberOFCourse>' ;
                select @part3 = '<NumberOFSemesterCredit>'+isnull(convert(varchar,(select NumberOFSemesterCredit from Courses)), 0)'</NumberOFSemesterCredit>' +
                '</Students>';
                select @part1 += @part2 + @part3

您尚未发布实际使用的代码,因为其中存在多种错别字,并且在修正这些错字时,它不会显示您所描述的行为,因此我无法告诉您为什么您的代码不适合您。

除了使用字符串连接来构建XML之外,还可以将PATH模式与FOR XML结合使用如下所示。

select C.NumberOFCourse,
       C.NumberOFSemesterCredit
from Courses as C
for xml path('Students')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM