Foxtable(狐表)用户栏目专家坐堂 → 2个表都是同一个外部数据源是否可用下面的方法合并?


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

主题:2个表都是同一个外部数据源是否可用下面的方法合并?

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


加好友 发短信
等级:四尾狐 帖子:884 积分:7061 威望:0 精华:0 注册:2013/3/5 8:42:00
2个表都是同一个外部数据源是否可用下面的方法合并?  发帖心情 Post By:2013/5/18 13:43:00 [只看该作者]

2个表都是同一个外部数据源是否可用下面的方法合并
将员工表1数据复制到员工表2
我用了下面的方法怎么不起作用呀


如果两个表的结构不同可以参考下面的代码:

Dim cmd As New SQLCommand
Dim
dt As DataTable
Dim
sCols() As String = {"列名1", "列名2", "列名3"}
Dim
dCols() As String = {"列名A", "列名B", "列名C"}
cmd
.ConnectionName = "数据源名称"
cmd
.CommandText = "SELECT * From {员工}"
dt
= cmd.ExecuteReader()
For Each
dr As DataRow In dt.DataRows
    Dim
nr As DataRow = DataTables("员工2").AddNew()
    For
i As Integer =0 To sCols.Length -1
       
nr(dCols(i)) = dr(sCols(i))
    Next
Next


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/5/18 14:03:00 [只看该作者]

正常不会啊,除非你DT没数据

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


加好友 发短信
等级:四尾狐 帖子:884 积分:7061 威望:0 精华:0 注册:2013/3/5 8:42:00
  发帖心情 Post By:2013/5/18 17:11:00 [只看该作者]

bin 帮我看看看我的哪里有错误,我的画横线的部分语句不执行呀
Dim cmd As New SQLCommand
Dim dt As DataTable
Dim sCols() As String = {"Name", "Address"}
Dim dCols() As String = {"cCompany", "cAddress"} 


cmd.C 
cmd.CommandText = "SELECT * From {searchdata}"
dt = cmd.ExecuteReader()
messagebox.show("222")

'"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""这部分语句不执行
For Each dr As DataRow In dt.DataRows
messagebox.show("4444")
    Dim nr As DataRow = DataTables("Client").AddNew()

messagebox.show("1111")
    For i As Integer =0 To sCols.Length -1
        nr(dCols(i)) = dr(sCols(i))
messagebox.show("333")
    Next
Next
’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘这部分语句不执行
messagebox.show("成功导入客户列表里,请查阅!")

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/5/18 17:13:00 [只看该作者]

说明你DT没有数据. SELECT * From {searchdata}并没有返回任何数据

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


加好友 发短信
等级:四尾狐 帖子:884 积分:7061 威望:0 精华:0 注册:2013/3/5 8:42:00
  发帖心情 Post By:2013/5/18 17:19:00 [只看该作者]

明白了,谢谢,确实是你的说的那个原因,我的那个searchdata我查了一下原来是查询表,所以数据库里一直没有数据,如果searchdata是查询表的情况下,这个方法是不是就不能用了

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/5/18 17:22:00 [只看该作者]

你也可以执行整段SQL查询语句来获得这个查询表啊..
或者直接datatables("searchdata")

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


加好友 发短信
等级:四尾狐 帖子:884 积分:7061 威望:0 精华:0 注册:2013/3/5 8:42:00
  发帖心情 Post By:2013/5/18 17:53:00 [只看该作者]

bin,如果我要把一个窗口中的表table1的当前帅选的记录,手动编码合并到另外一datatables2中去,代码该怎么写?


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/5/18 17:55:00 [只看该作者]

Dim dt As Tables("窗口1_table1")
For Each dr As Row In dt.Rows
messagebox.show("4444")
    Dim nr As DataRow = DataTables("Client").AddNew()

messagebox.show("1111")
    For i As Integer =0 To sCols.Length -1
        nr(dCols(i)) = dr(sCols(i))
messagebox.show("333")
    Next
Next

 回到顶部