Sql server MS SQL Server中的XML命令是否将文件保存在磁盘中?

Sql server MS SQL Server中的XML命令是否将文件保存在磁盘中?,sql-server,xml,Sql Server,Xml,MS SQL Server中的XML命令是否将文件保存在磁盘中 我正在创建一个触发器来记录表中的操作,该触发器的一部分是创建一个包含受影响行的XML。我正在考虑使用FORXML来生成XML SELECT * FROM TBL_Test WHERE ID=3040 FOR XML RAW 我担心的是我会在触发器中使用它,我不想每次调用FOR XML函数时都将文件保存在服务器中 另外:你们知道如何将它解析为varchar吗 提前感谢您的帮助 与任何SELECTquery一样,使用forxml子

MS SQL Server中的XML命令是否将文件保存在磁盘中

我正在创建一个触发器来记录表中的操作,该触发器的一部分是创建一个包含受影响行的XML。我正在考虑使用FORXML来生成XML

SELECT * 
FROM TBL_Test 
WHERE ID=3040
FOR XML RAW
我担心的是我会在触发器中使用它,我不想每次调用FOR XML函数时都将文件保存在服务器中

另外:你们知道如何将它解析为varchar吗


提前感谢您的帮助

与任何
SELECT
query一样,使用
forxml
子句的查询将结果返回给客户端,而不会将结果保存到磁盘

您可以使用标量子查询将结果XML分配给varchar变量,而不是返回到客户端:

DECLARE @xml varchar(MAX) =
    (
        SELECT * 
        FROM dbo.TBL_Test 
        WHERE ID=3040
        FOR XML RAW
    );

谢谢你,丹!你的回答使我免于头痛!