将XML插入SQL表XML列

Sre*_*har 1 xml sql t-sql sql-server

我试图将XML插入XML Column ..得到以下错误:.

消息6819,级别16,状态1,行5在INSERT语句中不允许FOR XML子句.

我的SQL查询

declare @tempTable Table (xmlValue xml)
insert into @tempTable
select EmployeeName, EmployeeSalary from Employee2
for xml path('EmployeeDetails')
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么

Aar*_*ght 9

正如错误所说,你不能FOR XMLINSERT声明的正文中使用.您必须包装检索XML的部分:

DECLARE @tempTable TABLE
(
    xmlValue xml
)

INSERT @tempTable (xmlValue)
SELECT
(
    SELECT EmployeeName, EmployeeSalary
    FROM Employee2
    FOR XML PATH('EmployeeDetails')
)
Run Code Online (Sandbox Code Playgroud)