以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求助:删除外部源中的一个表  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=66424)

--  作者:zuyong
--  发布时间:2015/4/6 14:41:00
--  求助:删除外部源中的一个表
动态加载了一个外部源中的表后,用DataTables.Contains  还是找不到该表,下面的代码错在哪里?
各位老师、大神
 If DataTables.Contains("ht" & dr("合同编号")) = False Then  \'如果已加载的表中不存在项目表
        Dim lst2 As List(Of String) \'定义一个字符型集合
        lst2 = Connections("我的外部源").GetTableNames        \'将远程数据库的所有表名称返回到字符串集合
        If lst2.Contains("ht" & dr("合同编号"))= True  Then      \'如果后台数据库存在该表
            DataTables.Load("ht" & dr("合同编号"))                   \'动态加载该表    这条代码能动态加载吗?为什么load以后,用DataTables.Contains还是找不到?
        End If
    End If



如果想直接删除外部源中的一个表,用什么代码?
   Dim Builder As New ADOXBuilder(“我的外部源“)
   Builder.Open()
   Builder.DeleteTable("ht" & dr("合同编号"))            \'这个行吗? 

--  作者:Bin
--  发布时间:2015/4/7 9:18:00
--  
说明你没有执行到这一行代码.

2.这种问题,为何不自己动手试试?

--  作者:zuyong
--  发布时间:2015/4/7 10:14:00
--  
试了,这段代码就是从其中拷出来的,加载语句没反应,之后外部源中的表用代码找不到。删除的代码也没作用,执行后表还在。
[此贴子已经被作者于2015/4/7 10:16:31编辑过]

--  作者:Bin
--  发布时间:2015/4/7 10:16:00
--  
1.上例子吧
2.是的.

--  作者:zuyong
--  发布时间:2015/4/15 15:35:00
--  
BIN 老师,帮帮看看吧。(已把例子上传了,为什么看不到?能否把邮箱给我,我传到邮箱里)
[此贴子已经被作者于2015/4/15 15:37:34编辑过]

--  作者:有点酸
--  发布时间:2015/4/15 15:43:00
--  

论坛文件上传说明:

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=78

 

 

注意: 如果已经加载,删除了,也要重新打开项目,才不会显示删除的表

 

[此贴子已经被作者于2015/4/15 15:43:41编辑过]