2010-11-26 2 views
-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> 
+1

당신이 MS SQL, Oracle을 사용하는 데이터베이스를 언급 할 수있다? – Hunter

+1

** ** 해당 XML의 어떤 부분이나 내용을 저장 하시겠습니까 ?? 단일 데이터베이스 필드에 XML을 저장하고 싶습니까? 아니면 XML을 관계형 데이터의 행에 "파쇄"할까요? 당신의 테이블은 어떻게 생겼습니까 ?? ** 당신을 도울 수 있도록 ** 적어도 컨텍스트 **를 제공해야합니다! –

답변

0

솔루션은 내 SQL,

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) 
     { } 
    } 
} 
0

일부 SQL DB는 일부 XML에 XML을 사용할 수 있습니다. PostgreSQL에는이 전례가있다. 표준의 SQL/XML에는 데이터베이스의 XML에 대한 몇 가지 사항이 있습니다. 어쨌든 XML을 큰 바이너리 객체 (또는 큰 문자열로 이벤트 ...)로 저장하는 것이 좋습니다. 나는 그것이 당신이 무엇을 요구하고 있는지 모릅니다.

XML에 대한 쿼리를 수행하려는 경우 일부 SQL DB는 XPath를 사용하여 XML 유형에서 정보를 추출 할 수 있습니다. 그렇지 않으면 데이터베이스에 데이터를 매핑해야하는데, 실제로는 XML과 관련이 없지만 SQL 스키마 디자인과 관련이있는 데이터를 매핑해야합니다.

아, XML이 실제로 잘 설계되지 않았다고 생각합니다. 각 연료 유형과 그 비율을 "연료"요소로 그룹화하는 것이 더 논리적 일 것입니다.