以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]怎样把一个access文件中所有的表,一起导入到狐表中成临时表?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=82874)

--  作者:54292550
--  发布时间:2016/3/26 12:43:00
--  [求助]怎样把一个access文件中所有的表,一起导入到狐表中成临时表?
我想把一个Access文件中所有的表,一起导入到项目中,是临时表的形式。可以吗?
一个mdb文件里面有10个表,想一下导入进狐表中,怎么弄啊?
[此贴子已经被作者于2016/3/26 13:14:26编辑过]

--  作者:Hyphen
--  发布时间:2016/3/26 13:28:00
--  
先生成临时表

在合并数据

以下代码测试通过:
Dim dtb As New DataTableBuilder("AAA")
dtb.AddDef("ID", Gettype(Integer))
dtb.AddDef("V2", Gettype(String), 255)
dtb.Build()

Dim mg As New Merger
mg.SourcePath = "F:\\test2.mdb"
mg.SourceTableName = "AAA"
mg.DataTableName = "AAA"
mg.Merge()

--  作者:54292550
--  发布时间:2016/3/26 17:23:00
--  
就是要导入mdb里面所有的表,表名称都是唯一的序列号,有的mdb里有一个表,有的有多个表。就是想一下导入进狐表,不是临时表也可以。有什么办法把所有的表一次性导入?
--  作者:Hyphen
--  发布时间:2016/3/26 17:34:00
--  
获取数据源所有表名参考:http://www.foxtable.com/help/topics/1943.htm

获取到表名后,循环导入:http://www.foxtable.com/help/topics/0684.htm

--  作者:大红袍
--  发布时间:2016/3/27 11:32:00
--  
Dim dlg As  new OpenFileDialog
If dlg.ShowDialog = DialogResult.OK Then
    If Connections.Contains("test") Then Connections.Delete("test")
    Connections.Add("test","Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dlg.FileName & ";Persist Security Info=False")
    For Each tn As String In Connections("test").GetTableNames
        Dim ip As New Importer
        ip.SourcePath = dlg.FileName \'指定数据文件
        ip.SourceTableName = tn \'指定要导入的表
        ip.NewTableName =tn \'导入后的表名
        ip.Import()
    Next
End If