0
這是一個獨特的問題..我想。所以我的目標是輸入一個變量並從我的列中獲取一行。讓我來解釋一下代碼即將做的事情。在SQL中使用xml來評估動態變量
SELECT
pref.query('Database/text()') as PersonSkills,
pref.query('FillQuery/text()') as PersonSkills,
pref.query('TabText/text()') as PersonSkills,
pref.query('TooltipText/text()') as PersonSkills
FROM table CROSS APPLY
Tag.nodes('/Root/Configuration/TaskSelectorControl/QueueSelector') AS People(pref)
這工作正常。然而,我需要做的是在最後一部分傳遞隊列選擇器作爲變量。
DECLARE @Xml XML
DECLARE @AttributeName VARCHAR(MAX) = 'QueueSelector'
SELECT
pref.query('Database/text()') as PersonSkills,
pref.query('FillQuery/text()') as PersonSkills,
pref.query('TabText/text()') as PersonSkills,
pref.query('TooltipText/text()') as PersonSkills
FROM table CROSS APPLY
Tag.nodes('/Root/Configuration/TaskSelectorControl[@Name=sql:variable("@AttributeName")]
') AS People(pref)
這不行,任何想法爲什麼?
嗯,我有點撒謊。底部的作品,但它返回一個空的數據集
你,先生,是驚人的 – DidIReallyWriteThat