Dobrý den. Měl bych dotaz jestli někdo náhodou neví jakým způsobem se dá použít sql:variable v xml query. Popř. jakým jiným způsobem by to šlo udělat. Jde o to, že mám vytvořenou SQL funkci, která mi z xml vytáhne text v určité řeči.
DECLARE @XML xml = '<xml>
<cz-CZ>Text CZ</cz-CZ>
<de-DE>Text DE</de-DE>
<en-EN>Text EN</en-EN>
</xml>'
, @DATA nvarchar(7) = '//cz-CZ'
select @XML.query('data(//cz-CZ)')
--result 'Text CZ' - Ok
select @XML.query('data(sql:variable("@DATA"))')
--result '//cz-CZ' - Wrong
Možnost složení celého selectu jako stringu a následné zavolání execute nepřipadá v úvahu, jde o SQL funcki a tam nelze execute zavolat.
|