Foxtable(狐表)用户栏目专家坐堂 → 如何遍历acc数据库,获取所有的表名,然后全部临时加载到项目中呢?


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

主题:如何遍历acc数据库,获取所有的表名,然后全部临时加载到项目中呢?

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


加好友 发短信
等级:七尾狐 帖子:1571 积分:11238 威望:0 精华:0 注册:2021/1/17 17:06:00
如何遍历acc数据库,获取所有的表名,然后全部临时加载到项目中呢?  发帖心情 Post By:2022/2/18 9:03:00 [显示全部帖子]

如何遍历acc数据库,获取所有的表名,然后全部临时加载到项目中呢?

当前代码如下:只能加载一个表,红色部分就是表名

 

 

Dim q As new QueryBuilder
q.Conn ectionN ame = "委"
q.TableName = "在职及亲属"   是导入到项目后的表名
q.Se lectString = "S elect * From {在职及亲属}"  是ACC数据库中实际存在的表名
q.Build
MainTable = Tables("表A")


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


加好友 发短信
等级:七尾狐 帖子:1571 积分:11238 威望:0 精华:0 注册:2021/1/17 17:06:00
回复:(有点蓝)http://www.foxtable.com/webhelp/to...  发帖心情 Post By:2022/2/18 9:54:00 [显示全部帖子]

谢谢老师  参照老师的指导 

当前代码如下:【想实现先遍历外部数据源的所有表名,然后判断项目里面是否存在,如不存在就加载进来,存在就不做任何动作】

 

Dim q As new Qu eryBuilder
q.Conn ectionN ame = "委"
Dim lst As List(Of  String)
lst = Conn ections("委").GetTableNames
For Each nm As String In lst
    For Each t As DataTable In DataTables  
        If t.Name=nm Then
        Else
            q.TableName = nm
            q.Sele ctString = "S elect * From {" & nm & "}"
            q.Build
        End If
    Next
Next
MainTable = Tables("表A")

 

代码运行后提示如下:

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2020.5.29.8
错误所在事件:自定义函数,临时表加载
详细错误信息:
调用的目标发生了异常。
集合已修改;可能无法执行枚举操作。

 

老师有没有修正的方法呢?


 回到顶部