我想使用SSIS將XML文件導入SQL服務器。該XML文件的結構是這樣如何使用SSIS包導入XML文件?
<?xml version="1.0" encoding="utf-8"?>
<dataset xmlns="http://developer.cognos.com/schemas/xmldata/1/" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance">
<!--
<dataset
xmlns="http://developer.cognos.com/schemas/xmldata/1/"
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xs:schemaLocation="http://developer.cognos.com/schemas/xmldata/1/ xmldata.xsd"
>
-->
<metadata>
<item name="ORDERNUM" type="xs:string" length="26"/>
<item name="Business Stream" type="xs:string" length="482"/>
<item name="ORDERNO" type="xs:decimal" precision="8"/>
<item name="ORDERTYPE" type="xs:string"/>
<item name="ITEM_NO" type="xs:decimal" precision="8"/>
<item name="ITEM_NO2" type="xs:string" length="52"/>
<item name="PG" type="xs:int" precision="1"/>
<item name="SG" type="xs:int" precision="1"/>
<item name="LINEDESC" type="xs:string" length="122"/>
<item name="CUSTNO" type="xs:decimal" precision="8"/>
<item name="ORDERQNTY" type="xs:decimal" scale="3" precision="77"/>
<item name="COST_VALUE" type="xs:decimal" scale="5" precision="77"/>
<item name="EXTD_LIST" type="xs:decimal" scale="4" precision="77"/>
<item name="EXTD_VALUE" type="xs:decimal" scale="4" precision="77"/>
<item name="LINE_NO" type="xs:decimal" precision="9"/>
<item name="TDATE" type="xs:date"/>
<item name="TQUARTER" type="xs:decimal" precision="1"/>
<item name="INVOICEDAT" type="xs:date"/>
<item name="IQUARTER" type="xs:decimal" precision="1"/>
<item name="ORIGNUM" type="xs:decimal" precision="10"/>
<item name="ORIGTYPE" type="xs:string" length="22"/>
<item name="TYPECALC" type="xs:string"/>
<item name="SEQ" type="xs:int" precision="1"/>
<item name="INC_IN_COU" type="xs:string"/>
<item name="COSTMOD" type="xs:string" length="4"/>
<item name="GROSSMOD" type="xs:string" length="4"/>
<item name="CHFLOOR" type="xs:string" length="16"/>
<item name="Group Customer Description" type="xs:string" length="482"/>
<item name="Sales Area Description" type="xs:string" length="482"/>
<item name="Sales Area" type="xs:string" length="8"/>
<item name="Segment/Region Description" type="xs:string" length="482"/>
<item name="Segment/Region" type="xs:string" length="8"/>
<item name="ScheduledDespatchDate" type="xs:date"/>
<item name="Status Sid" type="xs:int" precision="1"/>
<item name="ShiptoCustomerNumber" type="xs:decimal" precision="8"/>
<item name="CONT_TYPE" type="xs:string" length="122"/>
<item name="EST_START" type="xs:date"/>
<item name="EST_COMPLTN" type="xs:date"/>
<item name="ACT_START" type="xs:date"/>
<item name="ACT_COMPLTN" type="xs:date"/>
<item name="Project_Status" type="xs:string" length="18"/>
</metadata>
<data>
<row>
<value>SO1897977</value>
<value>Products & Applications</value>
<value>1897977</value>
<value>SO</value>
<value>731305</value>
<value>0670800</value>
<value>67</value>
<value>3</value>
<value>3/4" HM10/8 CI Steam TrapBSP</value>
<value>20021</value>
<value>1</value>
<value>62.136</value>
<value>187.1</value>
<value>187.1</value>
<value>1000</value>
<value>2011-11-17</value>
<value>4</value>
<value>2011-11-17</value>
<value>4</value>
<value xs:nil="true" />
<value> </value>
<value>SO</value>
<value>1</value>
<value>Y</value>
<value>N</value>
<value>N</value>
<value>PDQ/KSP</value>
<value>Other Customers</value>
<value>Crumb Jonathan</value>
<value>917</value>
<value>Southern Division</value>
<value>STH</value>
<value>2011-11-17</value>
<value>70</value>
<value>60206</value>
<value xs:nil="true" />
<value>1900-01-01</value>
<value>1900-01-01</value>
<value>1900-01-01</value>
<value>1900-01-01</value>
<value xs:nil="true" />
</row>
<row>
<value>SO1897977</value>
<value>Products & Applications</value>
<value>1897977</value>
<value>SO</value>
<value>799262</value>
<value>1643100</value>
<value>164</value>
<value>60</value>
<value>1/2" FIG12 Bronze Y Type BSP+ 0.8 SS</value>
<value>20021</value>
<value>5</value>
<value>54.051</value>
<value>130.2</value>
<value>130.2</value>
<value>2000</value>
<value>2011-11-17</value>
<value>4</value>
<value>2011-11-17</value>
<value>4</value>
<value xs:nil="true" />
<value> </value>
<value>SO</value>
<value>1</value>
<value>Y</value>
<value>N</value>
<value>N</value>
<value>PDQ/KSP</value>
<value>Other Customers</value>
<value>Crumb Jonathan</value>
<value>917</value>
<value>Southern Division</value>
<value>STH</value>
<value>2011-11-17</value>
<value>70</value>
<value>60206</value>
<value xs:nil="true" />
<value>1900-01-01</value>
<value>1900-01-01</value>
<value>1900-01-01</value>
<value>1900-01-01</value>
<value xs:nil="true" />
</row>
我已經作出了XSD文件看起來像這樣
<?xml version="1.0"?>
<schema xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://developer.cognos.com/schemas/xmldata/1/" xmlns="http://www.w3.org/2001/XMLSchema">
<element name="dataset">
<complexType>
<sequence>
<element minOccurs="0" name="data">
<complexType>
<sequence>
<element minOccurs="0" maxOccurs="1" name="row">
<complexType>
<sequence>
<element name="ORDERNUM" type="string" />
<element name="BusinessStream" type="string" />
<element name="ORDERNO" type="decimal"/>
<element name="ORDERTYPE" type="string"/>
<element name="ITEM_NO" type="decimal" />
<element name="ITEM_NO2" type="string" />
<element name="PG" type="int" />
<element name="SG" type="int" />
<element name="LINEDESC" type="string" />
<element name="CUSTNO" type="decimal" />
<element name="ORDERQNTY" type="decimal" />
<element name="COST_VALUE" type="decimal" />
<element name="EXTD_LIST" type="decimal" />
<element name="EXTD_VALUE" type="decimal"/>
<element name="LINE_NO" type="decimal" />
<element name="TDATE" type="date"/>
<element name="TQUARTER" type="decimal" />
<element name="INVOICEDAT" type="date"/>
<element name="IQUARTER" type="decimal" />
<element name="ORIGNUM" type="decimal" />
<element name="ORIGTYPE" type="string" />
<element name="TYPECALC" type="string"/>
<element name="SEQ" type="int" />
<element name="INC_IN_COU" type="string"/>
<element name="COSTMOD" type="string" />
<element name="GROSSMOD" type="string" />
<element name="CHFLOOR" type="string" />
<element name="GroupCustomerDescription" type="string" />
<element name="SalesAreaDescription" type="string" />
<element name="SalesArea" type="string" />
<element name="SegmentRegionDescription" type="string" />
<element name="SegmentRegion" type="string" />
<element name="ScheduledDespatchDate" type="date"/>
<element name="StatusSid" type="int" />
<element name="ShiptoCustomerNumber" type="decimal" />
<element name="CONT_TYPE" type="string" />
<element name="EST_START" type="date"/>
<element name="EST_COMPLTN" type="date"/>
<element name="ACT_START" type="date"/>
<element name="ACT_COMPLTN" type="date"/>
<element name="Project_Status" type="string" />
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>
問題是,當我運行的任務,我得到正確的行數,但所有的值爲空。我對XML很陌生,所以我懷疑這真的很傻,任何人都可以幫忙嗎?
感謝您的回覆,並且您正確地改變節點的工作方式。可悲的是,這個XML文件來自外部源,所以我無法控制它,無論如何不能改變文件。 –