Foxtable(狐表)用户栏目专家坐堂 → 两个表中,将一个表列内容添加到另一表


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

主题:两个表中,将一个表列内容添加到另一表

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


加好友 发短信
等级:小狐 帖子:357 积分:3418 威望:0 精华:0 注册:2012/8/29 10:30:00
两个表中,将一个表列内容添加到另一表  发帖心情 Post By:2016/9/29 13:43:00 [只看该作者]

两个表是建立了关联,希望将关联内容表A的列,添加到表B的列中,是增加列,不是增加记录。如何编写代码,请指教?

谢谢


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


加好友 发短信
等级:超级版主 帖子:109463 积分:556971 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/29 14:13:00 [只看该作者]


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


加好友 发短信
等级:小狐 帖子:357 积分:3418 威望:0 精华:0 注册:2012/8/29 10:30:00
  发帖心情 Post By:2016/9/29 15:10:00 [只看该作者]

抱歉这是一个同一表的不同列的运算,如果是两个表的可否给一个具体的代码实例:


图片点击可在新窗口打开查看此主题相关图片如下:截图01.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2016/9/29 16:26:16编辑过]

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


加好友 发短信
等级:超级版主 帖子:109463 积分:556971 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/29 15:39:00 [只看该作者]

用法一样的

Dim cl As DataCol = DataTables("表A").DataCols("第十列")
If cl.IsString Then
    DataTables("表B").DataCols.Add(cl.Name,Gettype(String),cl.MaxLength)
ElseIf cl.IsDate Then
    ......
End If



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


加好友 发短信
等级:小狐 帖子:357 积分:3418 威望:0 精华:0 注册:2012/8/29 10:30:00
  发帖心情 Post By:2016/9/29 16:26:00 [只看该作者]

抱歉我更改后仅仅是增加了一列,并没有增加内容。我修改了几个参数,得到这样的结果。布置是何种原因。费心请帮帮我?谢谢

 


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


加好友 发短信
等级:小狐 帖子:357 积分:3418 威望:0 精华:0 注册:2012/8/29 10:30:00
  发帖心情 Post By:2016/9/29 16:29:00 [只看该作者]

我希望将他内容不仅仅按照最大的长度建立列,并且添加每行对应的值

 


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


加好友 发短信
等级:超级版主 帖子:109463 积分:556971 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/29 17:06:00 [只看该作者]

先循环添加列,再循环添加值。

初学者建议先看看帮助和视频教程:http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=67187

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


加好友 发短信
等级:超级版主 帖子:109463 积分:556971 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/29 17:16:00 [只看该作者]

Dim clst As new List(of String)
For Each c As DataCol In DataTables("表A").DataCols
    If DataTables("表B").DataCols.Contains(c.Name) = False Then
        clst.Add(c.Name)
        If c.IsString Then
            DataTables("表B").DataCols.Add(c.Name,Gettype(String),c.MaxLength,"",c.Caption)
        ElseIf c.IsDate Then
            DataTables("表B").DataCols.Add(c.Name,Gettype(Date),"",c.Caption)
        ElseIf c.IsNumeric Then
            DataTables("表B").DataCols.Add(c.Name,Gettype(Double),"",c.Caption)
        ElseIf c.IsBoolean Then
            DataTables("表B").DataCols.Add(c.Name,Gettype(Boolean),"",c.Caption)
        End If
    End If
Next
Dim dr As Row
For Each r As Row In Tables("表A").Rows
    dr = Tables("表B").AddNew
    For Each c As String In clst
        dr(c) = r(c)
    Next
Next

 回到顶部