存储过程XML格式字符串转@table

//C# 

StringBuilder sb = new StringBuilder();

sb.Append("<data>");
for (int i = 0; i < drs.Count; i++)
{
sb.Append("<row eid=\"" + drs[i].Cells["Column1"].Value.ToString() + "\" ejine=\"" + drs[i].Cells["Column11"].Value.ToString() + "\" iid=\"" + drs[i].Cells["Column14"].Value.ToString() + "\" ijine=\"" + drs[i].Cells["Column17"].Value.ToString() + "\"/>");
}
sb.Append("</data>");
string xml = sb.ToString();

return xml;

//SQL

declare @xml xml

set @xml ="<data><row id="120120222000064" jine="16"/></data>"

declare @tempTable table (
serialno nvarchar(50),
jine decimal(18,2)
)

insert into @tempTable
select Tbl.Col.value('@id', 'nvarchar(50)'),
Tbl.Col.value('@jine', 'decimal(18,2)')
from @xml.nodes('//data/row') Tbl(Col)

原文地址:https://www.cnblogs.com/xiguanjiandan/p/2733645.html