XQuery [value()]: 'value()' requires a singleton (or empty sequence), found operand of type 'xdt:untypedAtomic *'

后端 未结 6 1022
执念已碎
执念已碎 2020-12-02 20:14

I\'m trying to insert rows into a table using a select from XML. I think I\'m close. Where am I going wrong?

declare @xmldata xml;
set @xmldata = \'

        
6条回答
  •  春和景丽
    2020-12-02 20:37

    insert into PurchaseDetails(Upc, Quantity, PurchaseDate, PurchaseCity, PurchaseState)
    select T.X.value('(Upc/text())[1]', 'char(11)'),
           T.X.value('(Quantity/text())[1]', 'int'),
           T.X.value('(PurchaseDate/text())[1]', 'varchar(7)'),
           T.X.value('(PurchaseCity/text())[1]', 'varchar(50)'),
           T.X.value('(PurchaseState/text())[1]', 'char(2)')
    from @xmlData.nodes('/Database/PurchaseDetails/PurchaseDetail') as T(X)
    

提交回复
热议问题