-1
<FILE>
<TITLE> Final Fuel Tax Rates </TITLE>
<QUARTER>1Q2010</QUARTER>
<RECORD>
<JURISDICTION ID="#16">AB</JURISDICTION>
<COUNTRY>CAN</COUNTRY>
<FUEL_TYPE>Gasoline</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.3217</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0900</RATE>
<FUEL_TYPE>Special Diesel</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.3217</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0900</RATE>
<FUEL_TYPE>Gasohol</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.3217</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0900</RATE>
<FUEL_TYPE>Propane</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.2323</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0650</RATE>
<FUEL_TYPE>LNG</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.0000</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0000</RATE>
<FUEL_TYPE>CNG</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.0000</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0000</RATE>
<FUEL_TYPE>Ethanol</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.3217</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0900</RATE>
<FUEL_TYPE>Methanol</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.3217</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0900</RATE>
<FUEL_TYPE>E-85</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.3217</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0900</RATE>
<FUEL_TYPE>M-85</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.3217</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0900</RATE>
<FUEL_TYPE>A55</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.3217</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0900</RATE>
<FUEL_TYPE>Biodiesel</FUEL_TYPE>
<RATE COUNTRY="US" RATECHANGE="0">0.3217</RATE>
<RATE COUNTRY="CAN" RATECHANGE="0">0.0900</RATE>
</RECORD>
<RECORD>
4

2 に答える 2

0

一部のSQLDBは​​XMLタイプをサポートしています(一部のセルに一部のXMLを配置できます)。PostgreSQLにはこのモミの例があります。標準のSQL/XMLパーには、データベースのXMLに関するいくつかの点があります。とにかく、XMLを大きなバイナリオブジェクト(またはイベントを大きな文字列として...)として保存することをお勧めします。それがあなたが求めていることかどうかはわかりません。

XMLでクエリを実行する場合、一部のSQLDBは​​XPathを使用してXMLタイプから情報を抽出できます。それ以外の場合は、データベース内のデータをマップする必要があります。これは、必要なものである可能性が高いですが、実際にはXMLではなくSQLスキーマ設計に関連しています。

ああ、XMLはあまりうまく設計されていないと思います。各fuel_typeとそのレートを「fuel」要素にグループ化する方が論理的です。

于 2010-11-26T12:03:29.427 に答える
0

解決策は

XmlDocument _xmlDoc = new XmlDocument();
_xmlDoc.Load(@"C:\Users\AppData\Local\Temp\ry.xml");

string _xml = _xmlDoc.InnerXml;

FILE _fileObj = (FILE)DeSerialize(_xml, typeof(FILE));

if (_fileObj != null && _fileObj.RECORD != null && _fileObj.RECORD.Count > 0)
{
    foreach (FILERECORD _record in _fileObj.RECORD)
    {
        _record.JURISDICTION[0].Value;
        int i = 0;
        foreach (FILERECORDFUEL_TYPE _fuelType in _record.FUEL_TYPE)
        {   }
    }
}
于 2010-11-27T15:05:00.467 に答える