1

我有一个User用列调用的表Orders..Orders将包含orderID用户..单个用户可以有多个OrderID,所以我需要使用 xml 在一个列中存储多个值..需要像这样存储在一列中

<Orders>
    <OrderID>45586</OrderID>
    <OrderID>45578</OrderID>
</Orders>

如何使用存储过程或 C# 代码执行此操作,如果下达新订单,则需要在末尾添加子节点

请帮助大家...

4

2 回答 2

1
create table #temp(val varchar(100) )
insert into #temp(val) values (
cast
((
SELECT 
    1 as a,2 as b,3 as c

    FOR
    XML PATH('Fruits'),
    TYPE)
 as varchar(100)))
select * from #temp
于 2013-07-09T09:53:21.840 回答
0

除了不要对您的数据库执行此操作,请先进行规范化,这是如何在 SQL SERVER 2005 及更高版本环境中修改的语法

    declare @xml xml
    declare @newElement xml
    select @xml = '<Orders>
        <OrderID>45586</OrderID>
        <OrderID>45578</OrderID>
    </Orders>'

    select @newElement = '<OrderID>12</OrderID>'

    set @xml.modify(
    'insert sql:variable("@newElement")
    as last into (//Orders)[1]'
    )

    select @xml
于 2013-07-09T09:54:58.947 回答