【发布时间】:2016-09-18 19:34:53
【问题描述】:
我使用的是 SQL Server 2008。我有一个返回 XML 数据的存储过程。我想通过 `bcp' 使用存储过程并将输出返回到 XML 文件,或者在另一个存储过程中调用存储过程并将数据存储为 XML 变量。
要将其保存到文件中,存储过程因此没有 OUTPUT 参数并将数据作为 XML 返回。
这行得通
SET @CopyXmlCmd = 'bcp "EXEC CreateXMLFileOfDatabase " queryout "' + @FileAndPath + '" -T -w -S ' + @@SERVERNAME + ' -d ' + DB_NAME()
EXEC master..XP_CMDSHELL @CopyXmlCmd
存储过程CreateXMLFileOfDatabase 没有输出或输入参数。但我还需要让这个存储过程为此工作:
DECLARE @XmlTargetDB XML;
EXEC CreateXMLFileOfDatabase @ResultDB = @XmlTargetDB
这个版本的存储过程的签名是这样的:
CREATE PROCEDURE [dbo].[CreateXMLFileOfDatabase] @ResultDB XML OUTPUT
我可以使用bcp 使用具有输出参数的存储过程并将结果存储到文件中吗?
【问题讨论】:
标签: sql-server xml bcp