【问题标题】:loading xml into SQL Server 2008 using sqlbulkload component使用 sqlbulkload 组件将 xml 加载到 SQL Server 2008
【发布时间】:2009-12-24 10:13:30
【问题描述】:

“错误:架构:‘headerRecord’上预期的关系。”

我在使用 SQLXMLBulkLoad4 组件将 xml 文件加载到 SQL Server 2008 时收到上述错误,xml 文件包含调用详细信息记录,我已使用 Dataset 和 XSD.exe 工具从 xml 文件生成架构文件,但错误仍然存​​在同样。,是否有另一种方法将具有多个表的xml文件导入SQL Server 2008? .

这里是xml文件:

<CallEventDataFile>
<headerRecord>
<productionDateTime>0912021247482B0300</productionDateTime>
<recordingEntity>00</recordingEntity>
<extensions/>
</headerRecord>
<callEventRecords>
<mtSMSRecord>
  <recordType>7</recordType>
  <serviceCentre>91521230</serviceCentre>
  <servedIMSI>36570000031728F2</servedIMSI>
  <servedIMEI>53886000707896F0</servedIMEI>
  <servedMSISDN>915212454503F2</servedMSISDN>
  <msClassmark>3319A1</msClassmark>
  <recordingEntity>915212110100</recordingEntity>
  <location>
    <locationAreaCode>0006</locationAreaCode>
    <cellIdentifier>0C6E</cellIdentifier>
  </location>
  <deliveryTime>0912021535412B0300</deliveryTime>
  <systemType>
    <gERAN/>
  </systemType>
  <basicService>
    <teleservice>21</teleservice>
  </basicService>
  <additionalChgInfo>
    <chargeIndicator>2</chargeIndicator>
  </additionalChgInfo>
  <chargedParty>
    <calledParty/>
  </chargedParty>
  <orgRNCorBSCId>8E1A</orgRNCorBSCId>
  <orgMSCId>921A</orgMSCId>
  <globalAreaID>36F70500060C6E</globalAreaID>
  <subscriberCategory>0A</subscriberCategory>
  <firstmccmnc>36F705</firstmccmnc>
  <smsUserDataType>FF</smsUserDataType>
  <origination>8191F2</origination>
  <callReference>1605EB2FE1</callReference>
</mtSMSRecord>
<moSMSRecord>
  <recordType>6</recordType>
  <servedIMSI>36570000238707F9</servedIMSI>
  <servedIMEI>53928320195925F0</servedIMEI>
  <servedMSISDN>915212159430F2</servedMSISDN>
  <msClassmark>3319A2</msClassmark>
  <serviceCentre>91521230</serviceCentre>
  <recordingEntity>915212110100</recordingEntity>
  <location>
    <locationAreaCode>001B</locationAreaCode>
    <cellIdentifier>6983</cellIdentifier>
  </location>
  <messageReference>01</messageReference>
  <originationTime>0912021535412B0300</originationTime>
  <destinationNumber>8111F1</destinationNumber>
  <systemType>
    <gERAN/>
  </systemType>
  <basicService>
    <teleservice>22</teleservice>
  </basicService>
  <additionalChgInfo>
    <chargeIndicator>2</chargeIndicator>
  </additionalChgInfo>
  <chargedParty>
    <callingParty/>
  </chargedParty>
  <orgRNCorBSCId>8F1A</orgRNCorBSCId>
  <orgMSCId>921A</orgMSCId>
  <globalAreaID>36F705001B6983</globalAreaID>
  <subscriberCategory>0A</subscriberCategory>
  <firstmccmnc>36F705</firstmccmnc>
  <smsUserDataType>FF</smsUserDataType>
  <callReference>1701BED4FF</callReference>
</moSMSRecord>
<ssActionRecord>
  <recordType>10</recordType>
  <servedIMSI>36570000636448F8</servedIMSI>
  <servedIMEI>53246030714961F0</servedIMEI>
  <servedMSISDN>915212056928F8</servedMSISDN>
  <msClassmark>3018A1</msClassmark>
  <recordingEntity>915212110100</recordingEntity>
  <location>
    <locationAreaCode>000C</locationAreaCode>
    <cellIdentifier>05A5</cellIdentifier>
  </location>
  <supplService>FF</supplService>
  <ssAction>
    <ussdInvocation/>
  </ssAction>
  <ssActionTime>0912021535412B0300</ssActionTime>
  <ssParameters>
    <unstructuredData>AA5C2E3702</unstructuredData>
  </ssParameters>
  <callReference>1701BED500</callReference>
  <systemType>
    <gERAN/>
  </systemType>
  <ussdCodingScheme>0F</ussdCodingScheme>
  <ussdString>
    <UssdString>AA5C2E3702</UssdString>
  </ussdString>
  <ussdRequestCounter>1</ussdRequestCounter>
  <additionalChgInfo>
    <chargeIndicator>1</chargeIndicator>
  </additionalChgInfo>
  <orgRNCorBSCId>8E1A</orgRNCorBSCId>
  <orgMSCId>921A</orgMSCId>
  <globalAreaID>36F705000C05A5</globalAreaID>
  <subscriberCategory>0A</subscriberCategory>
  <firstmccmnc>36F705</firstmccmnc>
</ssActionRecord>
<moCallRecord>
  <recordType>0</recordType>
  <servedIMSI>36570000807501F5</servedIMSI>
  <servedIMEI>53246030713955F0</servedIMEI>
  <servedMSISDN>915212157901F0</servedMSISDN>
  <callingNumber>A151911700</callingNumber>
  <calledNumber>8151677589</calledNumber>
  <roamingNumber>A111113850</roamingNumber>
  <recordingEntity>915212110100</recordingEntity>
  <mscIncomingROUTE>
    <rOUTEName>HWBSC2</rOUTEName>
  </mscIncomingROUTE>
  <mscOutgoingROUTE>
    <rOUTEName>HWBSC2</rOUTEName>
  </mscOutgoingROUTE>
  <location>
    <locationAreaCode>0006</locationAreaCode>
    <cellIdentifier>0C2F</cellIdentifier>
  </location>
  <basicService>
    <teleservice>11</teleservice>
  </basicService>
  <msClassmark>3319A1</msClassmark>
  <answerTime>0912021535382B0300</answerTime>
  <releaseTime>0912021535422B0300</releaseTime>
  <callDuration>4</callDuration>
  <radioChanRequested>
    <dualFullRatePreferred/>
  </radioChanRequested>
  <radioChanUsed>
    <halfRate/>
  </radioChanUsed>
  <causeForTerm>0</causeForTerm>
  <diagnostics>
    <gsm0408Cause>144</gsm0408Cause>
  </diagnostics>
  <callReference>1701BED501</callReference>
  <additionalChgInfo>
    <chargeIndicator>2</chargeIndicator>
  </additionalChgInfo>
  <gsm-SCFAddress>915212110130</gsm-SCFAddress>
  <serviceKey>1</serviceKey>
  <networkCallReference>171D555132</networkCallReference>
  <mSCAddress>915212110100</mSCAddress>
  <speechVersionSupported>25</speechVersionSupported>
  <speechVersionUsed>21</speechVersionUsed>
  <numberOfDPEncountered>3</numberOfDPEncountered>
  <levelOfCAMELService>01</levelOfCAMELService>
  <freeFormatData>800130</freeFormatData>
  <systemType>
    <gERAN/>
  </systemType>
  <classmark3>C000</classmark3>
  <chargedParty>
    <callingParty/>
  </chargedParty>
  <mscOutgoingCircuit>1051</mscOutgoingCircuit>
  <orgRNCorBSCId>8E1A</orgRNCorBSCId>
  <orgMSCId>921A</orgMSCId>
  <calledIMSI>36570000635618F8</calledIMSI>
  <globalAreaID>36F70500060C2F</globalAreaID>
  <subscriberCategory>0A</subscriberCategory>
  <firstmccmnc>36F705</firstmccmnc>
  <lastmccmnc>36F705</lastmccmnc>
</moCallRecord>
<mtCallRecord>
  <recordType>1</recordType>
  <servedIMSI>36570000635618F8</servedIMSI>
  <servedIMEI>53464010474309F0</servedIMEI>
  <servedMSISDN>915212755697F8</servedMSISDN>
  <callingNumber>A151911700</callingNumber>
  <recordingEntity>915212110100</recordingEntity>
  <mscIncomingROUTE>
    <rOUTEName>HWBSC2</rOUTEName>
  </mscIncomingROUTE>
  <mscOutgoingROUTE>
    <rOUTEName>HWBSC2</rOUTEName>
  </mscOutgoingROUTE>
  <location>
    <locationAreaCode>0006</locationAreaCode>
    <cellIdentifier>0C2D</cellIdentifier>
  </location>
  <basicService>
    <teleservice>11</teleservice>
  </basicService>
  <supplServicesUsed>
    <SuppServiceUsedid>
      <ssCode>11</ssCode>
      <ssTime>0912021535382B0300</ssTime>
    </SuppServiceUsedid>
  </supplServicesUsed>
  <msClassmark>331981</msClassmark>
  <answerTime>0912021535382B0300</answerTime>
  <releaseTime>0912021535422B0300</releaseTime>
  <callDuration>4</callDuration>
  <radioChanRequested>
    <dualFullRatePreferred/>
  </radioChanRequested>
  <radioChanUsed>
    <halfRate/>
  </radioChanUsed>
  <causeForTerm>0</causeForTerm>
  <diagnostics>
    <gsm0408Cause>144</gsm0408Cause>
  </diagnostics>
  <callReference>1701BED502</callReference>
  <additionalChgInfo>
    <chargeIndicator>2</chargeIndicator>
  </additionalChgInfo>
  <networkCallReference>171D555132</networkCallReference>
  <mSCAddress>915212110100</mSCAddress>
  <speechVersionSupported>25</speechVersionSupported>
  <speechVersionUsed>21</speechVersionUsed>
  <systemType>
    <gERAN/>
  </systemType>
  <classmark3>C000</classmark3>
  <chargedParty>
    <calledParty/>
  </chargedParty>
  <roamingNumber>A111113850</roamingNumber>
  <mscIncomingCircuit>9119</mscIncomingCircuit>
  <orgRNCorBSCId>8E1A</orgRNCorBSCId>
  <orgMSCId>921A</orgMSCId>
  <globalAreaID>36F70500060C2D</globalAreaID>
  <subscriberCategory>0A</subscriberCategory>
  <firstmccmnc>36F705</firstmccmnc>
  <lastmccmnc>36F705</lastmccmnc>
</mtCallRecord>
<incGatewayRecord>
  <recordType>3</recordType>
  <callingNumber>A17005991565</callingNumber>
  <calledNumber>A1853643F7</calledNumber>
  <recordingEntity>915212110100</recordingEntity>
  <mscIncomingROUTE>
    <rOUTEName>ZPSTN</rOUTEName>
  </mscIncomingROUTE>
  <mscOutgoingROUTE>
    <rOUTEName>ZTEBSC3</rOUTEName>
  </mscOutgoingROUTE>
  <answerTime>0912021535302B0300</answerTime>
  <releaseTime>0912021535422B0300</releaseTime>
  <callDuration>12</callDuration>
  <causeForTerm>0</causeForTerm>
  <diagnostics>
    <gsm0408Cause>144</gsm0408Cause>
  </diagnostics>
  <callReference>2203AFBF84</callReference>
  <basicService>
    <teleservice>11</teleservice>
  </basicService>
  <additionalChgInfo>
    <chargeIndicator>2</chargeIndicator>
  </additionalChgInfo>
  <roamingNumber>A111111980</roamingNumber>
  <mscIncomingCircuit>934</mscIncomingCircuit>
  <orgMSCId>921A</orgMSCId>
  <mscIncomingRouteAttribute>
    <isup/>
  </mscIncomingRouteAttribute>
  <networkCallReference>22432B5132</networkCallReference>
</incGatewayRecord>
<outGatewayRecord>
  <recordType>4</recordType>
  <callingNumber>A151012431</callingNumber>
  <calledNumber>817026936873</calledNumber>
  <recordingEntity>915212110100</recordingEntity>
  <mscIncomingROUTE>
    <rOUTEName>HWBSC</rOUTEName>
  </mscIncomingROUTE>
  <mscOutgoingROUTE>
    <rOUTEName>ZPSTN</rOUTEName>
  </mscOutgoingROUTE>
  <answerTime>0912021535192B0300</answerTime>
  <releaseTime>0912021535432B0300</releaseTime>
  <callDuration>24</callDuration>
  <causeForTerm>0</causeForTerm>
  <diagnostics>
    <gsm0408Cause>144</gsm0408Cause>
  </diagnostics>
  <callReference>2303B19880</callReference>
  <basicService>
    <teleservice>11</teleservice>
  </basicService>
  <additionalChgInfo>
    <chargeIndicator>2</chargeIndicator>
  </additionalChgInfo>
  <mscOutgoingCircuit>398</mscOutgoingCircuit>
  <orgMSCId>921A</orgMSCId>
  <mscOutgoingRouteAttribute>
    <isup/>
  </mscOutgoingRouteAttribute>
  <networkCallReference>238BE55132</networkCallReference>
</outGatewayRecord>
</callEventRecords>
<trailerRecord>
<productionDateTime>0912021247512B0300</productionDateTime>
<recordingEntity>00</recordingEntity>
<firstCallDateTime>000000000000000000</firstCallDateTime>
<lastCallDateTime>000000000000000000</lastCallDateTime>
<noOfRecords>521</noOfRecords>
<extensions/>
</trailerRecord>
<extensions/>
</CallEventDataFile>

数据集生成的架构文件:

<?xml version="1.0" standalone="yes"?>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"    xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="location">
<xs:complexType>
  <xs:sequence>
    <xs:element name="locationAreaCode" type="xs:string" minOccurs="0" />
    <xs:element name="cellIdentifier" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="systemType">
<xs:complexType>
  <xs:sequence>
    <xs:element name="gERAN" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="basicService">
<xs:complexType>
  <xs:sequence>
    <xs:element name="teleservice" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="additionalChgInfo">
<xs:complexType>
  <xs:sequence>
    <xs:element name="chargeIndicator" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="chargedParty">
<xs:complexType>
  <xs:sequence>
    <xs:element name="calledParty" type="xs:string" minOccurs="0" />
    <xs:element name="callingParty" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="mscIncomingROUTE">
<xs:complexType>
  <xs:sequence>
    <xs:element name="rOUTEName" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="mscOutgoingROUTE">
<xs:complexType>
  <xs:sequence>
    <xs:element name="rOUTEName" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="radioChanRequested">
<xs:complexType>
  <xs:sequence>
    <xs:element name="dualFullRatePreferred" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="radioChanUsed">
<xs:complexType>
  <xs:sequence>
    <xs:element name="halfRate" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="diagnostics">
<xs:complexType>
  <xs:sequence>
    <xs:element name="gsm0408Cause" type="xs:string" minOccurs="0" />
  </xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CallEventDataFile">
<xs:complexType>
  <xs:sequence>
    <xs:element name="extensions" type="xs:string" minOccurs="0" />
    <xs:element name="headerRecord" minOccurs="0" maxOccurs="unbounded">
      <xs:complexType>
        <xs:sequence>
          <xs:element name="productionDateTime" type="xs:string" minOccurs="0" />
          <xs:element name="recordingEntity" type="xs:string" minOccurs="0" />
          <xs:element name="extensions" type="xs:string" minOccurs="0" />
        </xs:sequence>
      </xs:complexType>
    </xs:element>
    <xs:element name="callEventRecords" minOccurs="0" maxOccurs="unbounded">
      <xs:complexType>
        <xs:sequence>
          <xs:element name="mtSMSRecord" minOccurs="0" maxOccurs="unbounded">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="recordType" type="xs:string" minOccurs="0" />
                <xs:element name="serviceCentre" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMSI" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMEI" type="xs:string" minOccurs="0" />
                <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" />
                <xs:element name="msClassmark" type="xs:string" minOccurs="0" />
                <xs:element name="recordingEntity" type="xs:string" minOccurs="0" />
                <xs:element name="deliveryTime" type="xs:string" minOccurs="0" />
                <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" />
                <xs:element name="orgMSCId" type="xs:string" minOccurs="0" />
                <xs:element name="globalAreaID" type="xs:string" minOccurs="0" />
                <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" />
                <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" />
                <xs:element name="smsUserDataType" type="xs:string" minOccurs="0" />
                <xs:element name="origination" type="xs:string" minOccurs="0" />
                <xs:element name="callReference" type="xs:string" minOccurs="0" />
                <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="systemType" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="basicService" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="additionalChgInfo" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="chargedParty" minOccurs="0" maxOccurs="unbounded" />
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="moSMSRecord" minOccurs="0" maxOccurs="unbounded">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="recordType" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMSI" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMEI" type="xs:string" minOccurs="0" />
                <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" />
                <xs:element name="msClassmark" type="xs:string" minOccurs="0" />
                <xs:element name="serviceCentre" type="xs:string" minOccurs="0" />
                <xs:element name="recordingEntity" type="xs:string" minOccurs="0" />
                <xs:element name="messageReference" type="xs:string" minOccurs="0" />
                <xs:element name="originationTime" type="xs:string" minOccurs="0" />
                <xs:element name="destinationNumber" type="xs:string" minOccurs="0" />
                <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" />
                <xs:element name="orgMSCId" type="xs:string" minOccurs="0" />
                <xs:element name="globalAreaID" type="xs:string" minOccurs="0" />
                <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" />
                <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" />
                <xs:element name="smsUserDataType" type="xs:string" minOccurs="0" />
                <xs:element name="callReference" type="xs:string" minOccurs="0" />
                <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="systemType" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="basicService" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="additionalChgInfo" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="chargedParty" minOccurs="0" maxOccurs="unbounded" />
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="ssActionRecord" minOccurs="0" maxOccurs="unbounded">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="recordType" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMSI" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMEI" type="xs:string" minOccurs="0" />
                <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" />
                <xs:element name="msClassmark" type="xs:string" minOccurs="0" />
                <xs:element name="recordingEntity" type="xs:string" minOccurs="0" />
                <xs:element name="supplService" type="xs:string" minOccurs="0" />
                <xs:element name="ssActionTime" type="xs:string" minOccurs="0" />
                <xs:element name="callReference" type="xs:string" minOccurs="0" />
                <xs:element name="ussdCodingScheme" type="xs:string" minOccurs="0" />
                <xs:element name="ussdRequestCounter" type="xs:string" minOccurs="0" />
                <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" />
                <xs:element name="orgMSCId" type="xs:string" minOccurs="0" />
                <xs:element name="globalAreaID" type="xs:string" minOccurs="0" />
                <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" />
                <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" />
                <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" />
                <xs:element name="ssAction" minOccurs="0" maxOccurs="unbounded">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:element name="ussdInvocation" type="xs:string" minOccurs="0" />
                    </xs:sequence>
                  </xs:complexType>
                </xs:element>
                <xs:element name="ssParameters" minOccurs="0" maxOccurs="unbounded">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:element name="unstructuredData" type="xs:string" minOccurs="0" />
                    </xs:sequence>
                  </xs:complexType>
                </xs:element>
                <xs:element ref="systemType" minOccurs="0" maxOccurs="unbounded" />
                <xs:element name="ussdString" minOccurs="0" maxOccurs="unbounded">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:element name="UssdString" type="xs:string" minOccurs="0" />
                    </xs:sequence>
                  </xs:complexType>
                </xs:element>
                <xs:element ref="additionalChgInfo" minOccurs="0" maxOccurs="unbounded" />
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="moCallRecord" minOccurs="0" maxOccurs="unbounded">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="recordType" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMSI" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMEI" type="xs:string" minOccurs="0" />
                <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" />
                <xs:element name="callingNumber" type="xs:string" minOccurs="0" />
                <xs:element name="calledNumber" type="xs:string" minOccurs="0" />
                <xs:element name="roamingNumber" type="xs:string" minOccurs="0" />
                <xs:element name="recordingEntity" type="xs:string" minOccurs="0" />
                <xs:element name="msClassmark" type="xs:string" minOccurs="0" />
                <xs:element name="answerTime" type="xs:string" minOccurs="0" />
                <xs:element name="releaseTime" type="xs:string" minOccurs="0" />
                <xs:element name="callDuration" type="xs:string" minOccurs="0" />
                <xs:element name="causeForTerm" type="xs:string" minOccurs="0" />
                <xs:element name="callReference" type="xs:string" minOccurs="0" />
                <xs:element name="gsm-SCFAddress" type="xs:string" minOccurs="0" />
                <xs:element name="serviceKey" type="xs:string" minOccurs="0" />
                <xs:element name="networkCallReference" type="xs:string" minOccurs="0" />
                <xs:element name="mSCAddress" type="xs:string" minOccurs="0" />
                <xs:element name="speechVersionSupported" type="xs:string" minOccurs="0" />
                <xs:element name="speechVersionUsed" type="xs:string" minOccurs="0" />
                <xs:element name="numberOfDPEncountered" type="xs:string" minOccurs="0" />
                <xs:element name="levelOfCAMELService" type="xs:string" minOccurs="0" />
                <xs:element name="freeFormatData" type="xs:string" minOccurs="0" />
                <xs:element name="classmark3" type="xs:string" minOccurs="0" />
                <xs:element name="mscOutgoingCircuit" type="xs:string" minOccurs="0" />
                <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" />
                <xs:element name="orgMSCId" type="xs:string" minOccurs="0" />
                <xs:element name="calledIMSI" type="xs:string" minOccurs="0" />
                <xs:element name="globalAreaID" type="xs:string" minOccurs="0" />
                <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" />
                <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" />
                <xs:element name="lastmccmnc" type="xs:string" minOccurs="0" />
                <xs:element ref="mscIncomingROUTE" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="mscOutgoingROUTE" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="basicService" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="radioChanRequested" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="radioChanUsed" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="diagnostics" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="additionalChgInfo" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="systemType" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="chargedParty" minOccurs="0" maxOccurs="unbounded" />
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="mtCallRecord" minOccurs="0" maxOccurs="unbounded">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="recordType" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMSI" type="xs:string" minOccurs="0" />
                <xs:element name="servedIMEI" type="xs:string" minOccurs="0" />
                <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" />
                <xs:element name="callingNumber" type="xs:string" minOccurs="0" />
                <xs:element name="recordingEntity" type="xs:string" minOccurs="0" />
                <xs:element name="msClassmark" type="xs:string" minOccurs="0" />
                <xs:element name="answerTime" type="xs:string" minOccurs="0" />
                <xs:element name="releaseTime" type="xs:string" minOccurs="0" />
                <xs:element name="callDuration" type="xs:string" minOccurs="0" />
                <xs:element name="causeForTerm" type="xs:string" minOccurs="0" />
                <xs:element name="callReference" type="xs:string" minOccurs="0" />
                <xs:element name="networkCallReference" type="xs:string" minOccurs="0" />
                <xs:element name="mSCAddress" type="xs:string" minOccurs="0" />
                <xs:element name="speechVersionSupported" type="xs:string" minOccurs="0" />
                <xs:element name="speechVersionUsed" type="xs:string" minOccurs="0" />
                <xs:element name="classmark3" type="xs:string" minOccurs="0" />
                <xs:element name="roamingNumber" type="xs:string" minOccurs="0" />
                <xs:element name="mscIncomingCircuit" type="xs:string" minOccurs="0" />
                <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" />
                <xs:element name="orgMSCId" type="xs:string" minOccurs="0" />
                <xs:element name="globalAreaID" type="xs:string" minOccurs="0" />
                <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" />
                <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" />
                <xs:element name="lastmccmnc" type="xs:string" minOccurs="0" />
                <xs:element ref="mscIncomingROUTE" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="mscOutgoingROUTE" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="basicService" minOccurs="0" maxOccurs="unbounded" />
                <xs:element name="supplServicesUsed" minOccurs="0" maxOccurs="unbounded">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:element name="SuppServiceUsedid" minOccurs="0" maxOccurs="unbounded">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="ssCode" type="xs:string" minOccurs="0" />
                            <xs:element name="ssTime" type="xs:string" minOccurs="0" />
                          </xs:sequence>

【问题讨论】:

  • 确切的错误信息是什么?
  • 错误是“错误:架构:'headerRecord' 上预期的关系。”

标签: sql-server xml


【解决方案1】:

你想在哪里以及如何导入这个 XML 文件??

SQL Server 2005 及更高版本对 XQuery 有相当广泛的支持,这意味着您可以使用 XPath 从 XML 中提取信息。

不知道您要做什么,这里只是一个简单的示例_

DECLARE @XmlContent XML
SET @XmlContent = '(put your XML here)'

SELECT
  @XmlContent.value('(/CallEventDataFile/headerRecord/productionDateTime)[1]', 'varchar(50)') as 'Production DateTime',
  @XmlContent.value('(/CallEventDataFile/headerRecord/recordingEntity)[1]', 'int') as 'Recording Entity'

使用这种 XQuery 语法,您可以从 XML 中提取几乎所有内容并将其轻松存储到表列中。

此外,如果您需要枚举 XML 标记内的 XML 节点列表,您可以在 XML 上使用 .nodes() 函数:

SELECT 
   mtsms.record.value('(recordType)[1]', 'int') as 'Record Type',
   mtsms.record.value('(serviceCentre)[1]', 'varchar(100)') as 'Service Centre'
FROM
   @XmlContents.nodes('//mtSMSRecord') AS mtsms(record)

使用此语句,您可以获得 XML 中所有 &lt;mtSMSRecord&gt; 节点的“虚拟表”,作为表“mtsms”和列“record”,然后您可以提取每个 mtSMSRecord 标记的详细信息并将其存储根据需要添加到您的关系表中。

关于 SQL Server 2005 及更高版本中 XML 支持的非常好的介绍是 15 秒上的 An Overview of XML Support in SQL Server 2005 文章。它向您展示了哪些 XML 函数可用以及如何使用它们。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-20
    • 1970-01-01
    • 2015-10-03
    相关资源
    最近更新 更多