Foxtable(狐表)用户栏目专家坐堂 → [求助]如何在用QueryBuilder生成的临时表中合并外部数据(已解决)


  共有3490人关注过本帖树形打印复制链接

主题:[求助]如何在用QueryBuilder生成的临时表中合并外部数据(已解决)

帅哥哟,离线,有人找我吗?
yyzlxc
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
[求助]如何在用QueryBuilder生成的临时表中合并外部数据(已解决)  发帖心情 Post By:2014/7/12 18:19:00 [只看该作者]

用QueryBuilder生成的临时表A,设想用以下代码将外部B表的“入厂时间”根据“编号”合并到A表,代码应该如何修改,请各位老师指教,谢谢。

Dim s As new QueryBuilder '生成临时表
s.TableName = "A"
s.C ’数据源
s.SelectString = "Select 编号,姓名 From {员工名册}"
s.Build
Dim t As Table = Tables("A")
t.DataTable.DataCols.Add("入厂时间", Gettype(Date)) ‘增加列

Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.C ‘数据源
cmd.CommandText = "SELECT * From {B}"
dt = cmd.ExecuteReader()
For Each dr As DataRow In dt.DataRows
    ’If DataTables("员工").Find("编号 = '" & dr("编号") & "'") Isnot Nothing Then
        Dim nr As DataRow = DataTables("A").AddNew()
        'For Each dc As DataCol In dt.DataCols
            nr("入厂时间") = dr("入厂时间")
        'Next
    ‘End If
Next
[此贴子已经被作者于2014-7-13 10:44:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
y2287958
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4633 积分:33815 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2014/7/12 19:37:00 [只看该作者]

用filler

 回到顶部
帅哥哟,离线,有人找我吗?
yyzlxc
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2014/7/12 19:58:00 [只看该作者]

谢谢y2287958老师的回复,不过不是增加数据行,只是将B表的“入厂时间”数据,填充到A表的“编号”对应行,而且B表为外部表,没有加载。

 回到顶部
帅哥哟,离线,有人找我吗?
y2287958
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4633 积分:33815 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2014/7/12 20:23:00 [只看该作者]

上个例子吧

 回到顶部
帅哥哟,离线,有人找我吗?
yyzlxc
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2014/7/13 9:07:00 [只看该作者]

上案例,要求在“生成C表”按钮代码中增加一段代码,将后台B表中的入厂日期,按编号填充到C表中,请各位老师指教,谢谢。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:ww.rar



 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/7/13 9:28:00 [只看该作者]

 回复楼主,直接用 inner  join 即可

 

http://www.foxtable.com/help/topics/2473.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
yyzlxc
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2014/7/13 10:44:00 [只看该作者]

谢谢甜老师的指教,现用SQLJoinTableBuilder实现所需效果,再次感谢甜老师的帮助。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:ww.rar

按钮代码如下:

Dim jb As New SQLJoinTableBuilder("查询表","A")
jb.C '数据源
jb.AddTable("A","编号","B","编号)
jb.AddCols("编号", "姓名", "入厂日期")
jb.Build()
MainTable = Tables("查询表")

[此贴子已经被作者于2014-7-13 11:02:00编辑过]

 回到顶部