Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Не работает OPENXML  [new]
вопросик123
Guest
Подскажите пожалуста, почему не работает запрос
DECLARE @input XML
DECLARE @input XML
SELECT @input =
cast ('<List guid="64F11DCF-D37B-458D-A4EA-309B7B600000">
    <row>guid="64F11DCF-D37B-458D-A4EA-309B7B6BFEC7" Code="1"  </row>
    <row>guid="64F11DCF-D37B-458D-A4EA-309B7B6BFEC7" Code="2"  </row>
    <row>guid="64F11DCF-D37B-458D-A4EA-309B7B6BFEC7" Code="3"  </row>
</List>
' AS XML)
	
DECLARE @idDOM INT
EXEC sp_xml_preparedocument @idDOM OUTPUT, @input
	
SELECT
  [guid], [code]
FROM OPENXML(@idDOM, '/List/row', 8)
WITH (
  [guid] UNIQUEIDENTIFIER '@guid',
  [code] INT './@Code'
)
	
EXEC sp_xml_removedocument @idDOM
те он работает, но возваращает только нуллы. (((
17 июл 09, 10:07    [7427469]     Ответить | Цитировать Сообщить модератору
 Re: Не работает OPENXML  [new]
pacha
Member

Откуда:
Сообщений: 239
вопросик123, так вы xml правильно оформите. guid и Code - сделайте атрибутами
17 июл 09, 10:10    [7427488]     Ответить | Цитировать Сообщить модератору
 Re: Не работает OPENXML  [new]
вопросик123
Guest
pacha
вопросик123, так вы xml правильно оформите. guid и Code - сделайте атрибутами
Спасибо.
Торможу. :) От руки примерчик набирал и ошибку допустил.
Рабочий вариант
	DECLARE @input XML
SELECT @input =
cast ('<List guid="64F11DCF-D37B-458D-A4EA-309B7B600000">
    <row guid="E4B0C04E-240A-43CA-87E9-D8FA3AE20C2A" Code="0" />
    <row guid="E4B0C04E-240A-43CA-87E9-D8FA3AE20C2A" Code="0" />
</List>
' AS XML)
	
DECLARE @idDOM INT
EXEC sp_xml_preparedocument @idDOM OUTPUT, @input

SELECT
  [guid], [code]
FROM OPENXML(@idDOM, '/List/row', 8)
WITH (
  [guid] UNIQUEIDENTIFIER '@guid',
  [code] INT '@Code'
)
	
EXEC sp_xml_removedocument @idDOM
17 июл 09, 10:17    [7427540]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить