以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 三个表的数据关联 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=102581) |
||||
-- 作者:bootes29 -- 发布时间:2017/6/22 14:28:00 -- 三个表的数据关联 各位老师,又来给大家添麻烦了, 现在有三个数据库 ,两两关联吧, 要实现数据按要求传输
|
||||
-- 作者:bootes29 -- 发布时间:2017/6/22 14:28:00 -- 这是样本
|
||||
-- 作者:bootes29 -- 发布时间:2017/6/22 15:11:00 -- 大师今天太忙了,辛苦辛苦 |
||||
-- 作者:有点色 -- 发布时间:2017/6/22 15:23:00 -- 不明白你什么意思,填充数据参考
http://www.foxtable.com/webhelp/scr/0680.htm
http://www.foxtable.com/webhelp/scr/1533.htm
|
||||
-- 作者:bootes29 -- 发布时间:2017/6/22 15:34:00 -- @有点色 老师好, 您推荐的参考,我已仔细研读。 这都是两个表之前的数据流转。 我这个是这样的意思。 表b 和表d 数据结构相同,他们之间的数据关系是靠表c 来确立。 平时,我建立一个对照,比如表b编号中的 某a1 对应 我要用的 编号 是a1,某c 对应 是c 如果 某a1 更新了 数据,某c没有更新,我想让表d中的 编号是 是a1 的那一行数据更新。 ----------- 是我解说的拗口
|
||||
-- 作者:bootes29 -- 发布时间:2017/6/22 15:39:00 -- 比如下图,执行完了 此主题相关图片如下:未标题-43.jpg |
||||
-- 作者:bootes29 -- 发布时间:2017/6/22 15:41:00 -- 上面的图中 地接 错了 应该是 某a1 此主题相关图片如下:未标题-43.jpg |
||||
-- 作者:有点色 -- 发布时间:2017/6/22 15:45:00 -- Dim dtb As DataTable = DataTables("表B") Dim dtc As DataTable = DataTables("表C") Dim dtd As DataTable = DataTables("表d") For Each drb As DataRow In dtb.DataRows Dim fdrc As DataRow = dtc.Find("别人编号 = \'" & drb("编号") & "\'") If fdrc IsNot Nothing Then Dim fdrd As DataRow = dtd.Find("编号 = \'" & fdrc("我们编号") & "\'") If fdrd Is Nothing Then fdrd = dtd.AddNew End If For Each dcb As DataCol In dtb.DataCols fdrd(dcb.name) = drb(dcb.name) Next fdrd("编号") = fdrc("我们编号") End If Next |
||||
-- 作者:bootes29 -- 发布时间:2017/6/22 16:04:00 -- 万分感谢 有的色 老师,学习了! Dim dtb As DataTable = DataTables("表B") Dim dtc As DataTable = DataTables("表C") Dim dtd As DataTable = DataTables("表d") For Each drb As DataRow In dtb.DataRows Dim fdrc As DataRow = dtc.Find("别人编号 = \'" & drb("编号") & "\'") If fdrc IsNot Nothing Then Dim fdrd As DataRow = dtd.Find("编号 = \'" & fdrc("我们编号") & "\'") If fdrd Is Nothing Then fdrd = dtd.AddNew End If For Each dcb As DataCol In dtb.DataCols fdrd(dcb.name) = drb(dcb.name) Next fdrd("编号") = fdrc("我们编号") fdrd("地接名称") = fdrc("别人编号") End If Next --------------------------
|
||||
-- 作者:有点色 -- 发布时间:2017/6/22 16:14:00 -- Dim dtb As DataTable = DataTables("表B") Dim trv As WinForm.TreeView = Forms("关联").Controls("TreeView1") |