У меня есть параметр @MyXMLString
передается в хранимую процедуру в следующем формате:Выберите несколько значений из XML в SQL Server
DECLARE @MyXMLString XML
SET @MyXMLString =
'<data formID="2">
<UnAssigned AcctTypeID="1"/><UnAssigned AcctTypeID="2"/>
</data>'
В хранимой процедуре, я должен получить значение formID
и AcctTypeID
и затем обновите таблицу.
Теперь будет только один formID
, который я могу получить
DECLARE @formID int
SET @formID = @MyXMLString.value('(data/@formID)[1]','int')
Но может быть один или несколько AcctTypeID
, то есть один или более '<UnAssigned AcctTypeID="1"/>'
. Мне нужна помощь в выяснении того, как его получить.
Он возвращает две строки NULL и не принимает фактические значения AcctTypeID. – SilverFish
@SilverFish: тогда вы не показали нам фактический XML, который вы получаете, - с XML, который вы опубликовали, этот код ** работает ** .... Также: будьте осторожны, обработка XML - это случай чувствительный! ** Убедитесь, что все имена элементов и/или атрибутов выполнены правильно! –