【发布时间】:2011-03-24 19:57:36
【问题描述】:
我有一个 XML 文件,我需要填充多个 SQL 表,我想知道最好的方法是什么。我在考虑数据集或 xslt,但老实说我不确定。这是我生成的 XML(部分)
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
- <!-- Created: 8/3/2010 12:09:15 PM
-->
- <Trip>
- <TripDetails>
<DepartureDate />
<ReturnDate />
<TripTypeA>3</TripTypeA>
<TripTypeB>1</TripTypeB>
<PurposeOfTrip>vacation</PurposeOfTrip>
<Region>5</Region>
- <Countries>
<Country>105</Country>
<Country>135</Country>
</Countries>
- <Cities>
<City>Cancun</City>
<City>Tokyo</City>
<City>Mayo</City>
</Cities>
<OverallRating>4</OverallRating>
<Suppliers>53</Suppliers>
<SuppliersComments>Good flight</SuppliersComments>
- <Transport>
<TransportType>1</TransportType>
<TransportType>3</TransportType>
</Transport>
<TransportComment>Transportation was fast</TransportComment>
我需要填充几个不同的表。(例如保持简短)
TripDetails (TripID, TripTypeA, TripTypeB, SupplierID, overallRating)
TripCountries (TripCountryID, TripID, CountryCode)
我还有很多表(城市、交通),但如果我能弄清楚如何更新 TripDetails(主表)和 TripCountries(将 TripDetails 和国家/地区结合在一起的表),我想我会很好,谢谢!
【问题讨论】:
-
我认为应该用
</TripDetails></Trip>关闭它吗?? -
对对,对不起,我刚刚复制了我的 xml 的 sn-p
-
使用“不可知”XSLT,您只能将此 XML 转换为 SQL 更新查询。如果这不是你想要的,请重新标记并添加你的 SQL 引擎,因为也许有一个供应商特定的方法来完成工作,比如 mattmc3 的答案。
标签: sql-server linq ado.net dataset