【发布时间】:2014-02-02 18:00:15
【问题描述】:
我正在使用 sql server 创建 c#.net windows 窗体应用程序。我必须将数据从另一个表导入到一个表中,但是两个表之间的映射在 xml 配置文件中,它是动态的,将来可能会被用户更改。每张表有100多个字段,如何通过动态映射导入数据。
其实我的xml是这样的
<Mapper MapID="3" Name="thridMappingDoc" SrcDB="OPTICS_SQL" gtDB="TargetSAMPLE">
<Source>
<OPTICS_SQL.OrderHDR Spk="" Sfk="" SfkRelation="" />
</Source>
<Target>
<TargetSAMPLE.Sales WhereClause="">
<TargetSAMPLE.Sales.SaleID Src="OPTICS_SQL.OrderHDR.OrderID" Tpk="Tfk="" TfkRelation="" ConstantValue="" Formula="" AlternateValue="" />
<TargetSAMPLE.Sales.SaleDate Src="OPTICS_SQL.OrderHDR.OrderDate" Tpk="" Tfk="" TfkRelation="" ConstantValue="" Formula="" AlternateValue="" />
</TargetSAMPLE.Sales>
</Target>
</Mapper>
第二个xml文件
假设我们有两个xml文件,一个定义了源连接字符串,目标连接字符串,另一个xml定义了srcdb和trgt db之间的映射。
1- 我必须读取源连接和目标连接。根据配置 xml 文件建立连接。 注意:- 你也可以在 Consetting xml 文件中定义你的连接字符串
2- 我必须读取第二个映射器 xml 文件,根据源连接和目标连接首先找到 src db 和 targetdb 中附加的表。 ex.- OrderHDR 表列 OrderId - 101,102,103 请先在sql中手动插入。
3- 检查第二个映射器 xml 文件中给出的条件
注意:这意味着 OrderHDR 表字段 OrderID 分配给 targetdb “TargetSample”,表名“Sales”,列名“SalesID” 注意:这里 OPTICS_SQL 是源连接字符串名称
4- 将您从 src db 读取的所有值插入 OrderID 到 targetdb 销售表列 salesId。
请在下面找到附件。并首先查看这些 xml 文件,我还附上了
sql脚本。
【问题讨论】:
-
你的问题是什么?
-
一个你正在使用的例子会有帮助。
-
我已经正确描述了问题..请帮忙。
标签: c# sql-server xml