我需要使用SQL过程从MSSQL(2012)导出数据到XML,并使用SQL Server代理定期运行脚本。
我想直接从SQL Server执行此操作,因为现在我正在使用控制台应用程序,它从SQL中的原始数据生成XML结构,需要10个多小时!输出XML现在有300M。
现在有人怎么办?我已经有存储过程生成XML输出。
答案 0 :(得分:1)
非常感谢。
该程序已成功执行。我只需为用户“SQLSERVERAGENT”设置目标文件夹的权限,因为代理成功完成但没有写任何内容。
但是我对最终的XML有一个小问题。在XML文件的开头和结尾都包含了一些来自Agent的信息。
有人知道如何删除页眉和页脚?
部首:
Job 'Xml Dump' : Step 1, 'Xml Dump Procedure' : Began Executing 2013-07-23 12:24:52
XML_F52E2B61-18A1-11d1-B105-00805F49916B
---------------------------------------------------------------------------------
页脚:
(146270 rows(s) affected)
存储过程包含此:
CREATE PROCEDURE GetXmlDumpCompleteData
(@Xml XML)
as
SET @Xml = (SELECT * FROM [MyTable]
FOR XML AUTO, ELEMENTS, ROOT('data'))
SELECT @Xml
职位代理中的命令:
DECLARE @Xml XML
EXEC [dbo].[GetXmlDumpCompleteData]
@Xml = @Xml OUTPUT
SELECT @Xml as N'@Xml'
GO