I'm importing XML files into a SQLExpress DB using SQLXML and VB.net 2005. I have a simple *.xsd schema file that is pulling in all attributes from the <Activity> element.
It also has a <Header> element that I'd like to add the 'Run' attribute for each record in the TA_HeaderID field. So, in the example, '879" would be added to each record in the TA_HeaderID field.
I tried adding the following to the schema but all this does is add one record to the DB which is not what I desire.
How do you edit the schema file to include this field for each record?
thanks
Jim
Code:
Schema file...
<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="[URL unfurl="true"]http://www.w3.org/2001/XMLSchema"[/URL] xmlns:sql="urn:schemas-microsoft-com:mapping-schema">
<xsd:element name="Activity" sql:relation="TTable">
<xsd:complexType>
<xsd:attribute name="Group" sql:field="TA_Group" type="xsd:string" use="required" />
<xsd:attribute name="GN" sql:field="TA_GN" type="xsd:unsignedByte" use="required" />
<xsd:attribute name="Set" sql:field="TA_Set" type="xsd:string" use="required" />
<xsd:attribute name="Term" sql:field="TA_Term" type="xsd:string" use="required" />
<xsd:attribute name="TN" sql:field="TA_TN" type="xsd:unsignedShort" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:schema>
.XML file...
<?xml version="1.0" ?>
<TA>
<Header Version="V418.05"Run="879"/>
<Activity Group="DAB" GN="2" Set="W01" Term="XCTPAY" TN="512"/>
<Activity Group="DAB" GN="2" Set="W01" Term="XGDB03" TN="523"/>
<Activity Group="DAB" GN="2" Set="W01" Term="XGDB06" TN="526"/>
<Activity Group="DAB" GN="2" Set="W01" Term="XGDB09" TN="1080"/>
</TA>
CREATE TABLE [dbo].[TTable](
[TA_HeaderID] [int] ,
[TA_Group] [varchar](3),
[TA_GN] [smallint] ,
[TA_Set] [varchar](3) ,
[TA_Term] [varchar](6) ,
[TA_TN] [smallint] ,
) ON [PRIMARY]
It also has a <Header> element that I'd like to add the 'Run' attribute for each record in the TA_HeaderID field. So, in the example, '879" would be added to each record in the TA_HeaderID field.
I tried adding the following to the schema but all this does is add one record to the DB which is not what I desire.
Code:
<xsd:element name="Header" sql:relation="TTable">
<xsd:complexType>
<xsd:attribute name="Run" sql:field="TA_HeaderId" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
thanks
Jim