Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共2 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:关于多表数据上报的问题?

1楼
rcsy001 发表于:2011/5/2 16:53:00

看了新版帮助,里面有数据上报的帮助,感觉非常好。

帮助就单表上报说明的很清楚了,我想请教多表数据上报如何操作?。

例如:我用A,B,C三张表,A为父表(AID主键),B(BID主键)C(CID主键)为子表,表B、表C都有AID字段,通过AID与表A的AID字希关联。表A的AID为自动编号字段。

在下级单位,表A的ID应为,1,2,3。。。。表B、表C与之相关联的AID字段值,也应为1,2,3

这样,上报时,主表并入上级单位主表,AID会自动更新,问题是子表上报并入上级数据后,与之相关联的AID会自动更新吗?

这样上报的数据能行吗?

 

2楼
狐狸爸爸 发表于:2011/5/2 17:37:00

先给你一个思路,随便写的,自己琢磨一下:

1、动态创建数据源,连接到要合并的文件

http://help.foxtable.com/topics/1494.htm

 

2、用SQlCommand的ExcuteReader从要合并的文件生成三个DataTable,分别为dt1和dt2和dt3

http://help.foxtable.com/topics/0696.htm

 

3、

For each dr1 as datarow in dt1.DataRows

   Dim dr2 as datarow = DataTables("表A").AddNew()

   for each dc as datarow in dt1.DataCols

        if dc.name <> "主键名称"

            dr2(dc.name) = dr1(dc.name)

        end if

   next

   dim drs2 as list(of datartow) = dt2.Select("主键名= " & dr1(主键名))

   for each dr3 as datarow in drs2

       Dim dr4 As DataRow = DAtaTables("表B").AddNew

       dr4("主键名称") = dr2(主键名称)

       for each dc as datarow in dt2.dataCols

           if dc.name <> "主键名称" then

              dr4(dc.name) = dr3(dc.name)

           end if

      next

   next

 

 

共2 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02734 s, 2 queries.