Я новичок в преобразовании строк XML в таблицы SQL Server. Когда я выполняю следующий код, он создает табличные данные в окне результатов Management Studio. Если я попытаюсь раскомментировать вставку в строку, ошибки запроса. Таблица, которую я создал, выглядит так:

И T-SQL это (я не уверен, что я делаю неправильно):
DECLARE @XML XML
SET @XML = '
<Codes>
<Code>
<TranCode>09764812</TranCode>
<TranDescr>WP FBCCP ADJUSTMENT</TranDescr>
<PosTranCode>77724</PosTranCode>
<NegTranCode>88820</NegTranCode>
</Code>
<Code>
<TranCode>09764804</TranCode>
<TranDescr>WP FBCCP CRM</TranDescr>
<PosTranCode>77724</PosTranCode>
<NegTranCode>88820</NegTranCode>
</Code>
<Code>
<TranCode>09764804</TranCode>
<TranDescr>WP FBCCP CRM</TranDescr>
<PosTranCode>77724</PosTranCode>
<NegTranCode>88820</NegTranCode>
</Code>
</Codes>'
DECLARE @handle INT
DECLARE @PrepareXmlStatus INT
EXEC @PrepareXmlStatus= sp_xml_preparedocument @handle OUTPUT, @XML
--INSERT INTO 670_TransCodes (TranCode,TranDescr,PosTranCode,NegTranCode)
SELECT TranCode,TranDescr,PosTranCode,NegTranCode
FROM OPENXML(@handle, '/Codes/Code', 2)
WITH (
TranCode varchar(20) 'TranCode',
TranDescr varchar(50) 'TranDescr',
PosTranCode INT 'PosTranCode',
NegTranCode INT 'NegTranCode'
)
EXEC sp_xml_removedocument @handle