如何从SQL Server导出到XML

3

如何从SQL Server [表或视图]最简单地导出到XML?

目前我所做的是:

执行Sql任务

SELECT * FROM Production.Product 
FOR XML AUTO, TYPE, ROOT('Data')

结果集 XML

在左边的结果集部分,我创建了一个新变量0 User::XMLVal

脚本任务

 Dim sw As New IO.StreamWriter("D:\Apps\SSIS\test.xml")
    sw.Write(Dts.Variables("User::XMLVal").Value.ToString())


    sw.Dispose()
2个回答

5
如果您想使用任务组件,请设置一个Execute SQL Task来将SQL语句或存储过程的结果读取到用户定义的SSIS变量中。您上面的语句是一个很好的例子:

enter image description here

然后使用XML Task将变量的内容写入文件:

enter image description here


但是我没有得到XML数据类型。我正在使用2005版本。我尝试使用Nvarchar,但它失败了**[执行SQL任务]错误:ResultSetType为“ResultSetType_XML”的结果绑定返回数量无效。** - Zerotoinfinity
2
@Zerotoinfinite 确保你的 Execute SQL TaskConnectionType 属性设置为 ADO.NETResultSet = None,并使用 OUTPUT 参数从存储过程调用中获取值。 - Yuck

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接