2011-02-01 16 views
0

XMLファイルを読み込んでデータベースに格納しようとしていますが、問題があります。デバッグを実行すると、すべて緑色になりますが、実際にはデータは転送されません。単純なXMLソース - >フラットファイル出力を作成しても、フラットファイルは作成後に空白になります。XMLファイルとSQL Server 2008 SSISに問題がある

私はインラインスキーマを使用していますが、スキーマを削除しても、SSISはXSDファイルを生成できません。ここで

はXMLです:

<?xml version="1.0" encoding="utf-16"?> 
<DataSet> 
    <xs:schema id="Schedule_x0020_Set" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> 
    <xs:element name="Schedule_x0020_Set" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"> 
     <xs:complexType> 
     <xs:choice minOccurs="0" maxOccurs="unbounded"> 
      <xs:element name="Schedule_x0020_Table"> 
      <xs:complexType> 
       <xs:sequence> 
       <xs:element name="ScheduleDate" type="xs:string" minOccurs="0" /> 
       <xs:element name="StaffLName" type="xs:string" minOccurs="0" /> 
       <xs:element name="StaffFName" type="xs:string" minOccurs="0" /> 
       <xs:element name="TaskName" type="xs:string" minOccurs="0" /> 
       </xs:sequence> 
      </xs:complexType> 
      </xs:element> 
     </xs:choice> 
     </xs:complexType> 
    </xs:element> 
    </xs:schema> 
    <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1"> 
    <Schedule_x0020_Set> 
     <Schedule_x0020_Table diffgr:id="Schedule Table1" msdata:rowOrder="0" diffgr:hasChanges="inserted"> 
     <ScheduleDate>1/24/2011</ScheduleDate> 
     <StaffLName>Smith</StaffLName> 
     <StaffFName>Josh</StaffFName> 
     <TaskName>Day Shift</TaskName> 
     </Schedule_x0020_Table> 
     <Schedule_x0020_Table diffgr:id="Schedule Table2" msdata:rowOrder="1" diffgr:hasChanges="inserted"> 
     <ScheduleDate>1/24/2011</ScheduleDate> 
     <StaffLName>Doe</StaffLName> 
     <StaffFName>Jane</StaffFName> 
     <TaskName>Night Shift</TaskName> 
     </Schedule_x0020_Table> 
     <Schedule_x0020_Table diffgr:id="Schedule Table3" msdata:rowOrder="2" diffgr:hasChanges="inserted"> 
     <ScheduleDate>1/24/2011</ScheduleDate> 
     <StaffLName>Johnson</StaffLName> 
     <StaffFName>Barbara</StaffFName> 
     <TaskName>Off</TaskName> 
     </Schedule_x0020_Table> 
    </Schedule_x0020_Set> 
    </diffgr:diffgram> 
</DataSet> 

答えて

0

私はそれを動作させるために、次のファイルを使用する必要がありました。私はスキーマを変更してdiffgrのものを削除したときに動作するようになりました。お役に立てれば。

<DataSet>


<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"><xs:element name="DataSet">
<xs:complexType>
<xs:sequence>
<xs:element ref="Schedule_x0020_Set"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Schedule_x0020_Set">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="Schedule_x0020_Table"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Schedule_x0020_Table">
<xs:complexType>
<xs:sequence>
<xs:element ref="ScheduleDate"/>
<xs:element ref="StaffLName"/>
<xs:element ref="StaffFName"/>
<xs:element ref="TaskName"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ScheduleDate" type="xs:string"/>
<xs:element name="StaffLName" type="xs:NCName"/>
<xs:element name="StaffFName" type="xs:NCName"/>
<xs:element name="TaskName" type="xs:string"/>
</xs:schema>
<Schedule_x0020_Set>
<Schedule_x0020_Table>
<ScheduleDate>1/24/2011</ScheduleDate>
<StaffLName>Smith</StaffLName>
<StaffFName>Josh</StaffFName>
<TaskName>Day Shift</TaskName>
</Schedule_x0020_Table>
<Schedule_x0020_Table>
<ScheduleDate>1/24/2011</ScheduleDate>
<StaffLName>Doe</StaffLName>
<StaffFName>Jane</StaffFName>
<TaskName>Night Shift</TaskName>
</Schedule_x0020_Table>
<Schedule_x0020_Table>
<ScheduleDate>1/24/2011</ScheduleDate>
<StaffLName>Johnson</StaffLName>
<StaffFName>Barbara</StaffFName>
<TaskName>Off</TaskName>
</Schedule_x0020_Table>
</Schedule_x0020_Set>
</DataSet>

関連する問題