Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Обработка xml  [new]
_Серега_
Member

Откуда:
Сообщений: 35
Уважаемые коллеги, подскажите, пожалуйста, как из xml получить значение параметра. Нужно написать функцию, на входе три параметра:xml, путь, узел. На выходе значение этого узла.

Если в from @xml.nodes( передать параметр: ...nodes(@Path) - возвращает ошибку:" ...must be a sting literal..."

select t.c.value('.', 'varchar(100)')
from @xml.nodes('/root/*[local-name(.) = sql:variable("@node")]') t(c)


в этом примере @node - параметр
как вместо /root тоже подстаить @Path
29 май 13, 13:11    [14364293]     Ответить | Цитировать Сообщить модератору
 Re: Обработка xml  [new]
Jovanny
Member

Откуда:
Сообщений: 1195
Наверное, только динамический SQL.
29 май 13, 13:43    [14364539]     Ответить | Цитировать Сообщить модератору
 Re: Обработка xml  [new]
_Серега_
Member

Откуда:
Сообщений: 35
Jovanny,

Пример можно?
29 май 13, 14:27    [14364800]     Ответить | Цитировать Сообщить модератору
 Re: Обработка xml  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381
> Пример можно?

динамический sql - это собирание текста запроса в переменную и выполнение его с помощью exec() или sp_executesql.
29 май 13, 14:43    [14364908]     Ответить | Цитировать Сообщить модератору
 Re: Обработка xml  [new]
Cammomile
Member

Откуда:
Сообщений: 1214
_Серега_
Jovanny,

Пример можно?

А то!

Declare @Query char(10) 
SET @Query = 'SELECT 111 '
EXEC (@Query)
29 май 13, 15:10    [14365081]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить