将XML插入SQL表XML列

时间:2010-03-01 01:10:51

标签: sql sql-server xml tsql

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

Msg 6819,Level 16,State 1,Line 5 INSERT语句中不允许使用FOR XML子句。

我的SQL查询

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

我做错了什么

1 个答案:

答案 0 :(得分:9)

如错误所示,您无法在FOR XML语句的正文中使用INSERT。您必须包装检索XML的部分:

DECLARE @tempTable TABLE
(
    xmlValue xml
)

INSERT @tempTable (xmlValue)
SELECT
(
    SELECT EmployeeName, EmployeeSalary
    FROM Employee2
    FOR XML PATH('EmployeeDetails')
)