以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]SQL数据库动态连接更新问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=151550)

--  作者:beijingboat
--  发布时间:2020/6/27 17:11:00
--  [求助]SQL数据库动态连接更新问题
用户数据库版本sql server2000,手动导出 mdf 和 ldf 文件,到另外一服务器应用端

希望在被导入服务器,通过foxtable应用程序找到mdf文件,并创建新的数据库连接

不知道能否通过代码实现。

请高手指点。


--  作者:有点蓝
--  发布时间:2020/6/27 17:18:00
--  
参考:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=77887&skin=0
--  作者:beijingboat
--  发布时间:2020/6/27 18:03:00
--  
先谢谢蓝老师,节日答复,感激不尽,我先试试
--  作者:beijingboat
--  发布时间:2020/6/29 10:38:00
--  [求助]SQL数据库动态连接更新问题2
外部数据表加载不上,还请指教。
代码如下:

If Connections.Contains("test") Then Connections.Delete("test")
    Dim cmd1 As New SQLCommand
    Connections.Add("test", "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=master;Data Source=THINKPADX1\\SQL2008R2")
\'messagebox.show("1")
   cmd1.C
    Connections("test").BeginTransaction() \'开始事务
    cmd1.CommandText ="use master;EXEC sp_attach_db @dbname =\'测试\',@filename1 =\'E:\\数据库软件\\2031.mdf\',@filename2 =\'E:\\数据库软件\\2031_log.ldf\'"
    \'messagebox.show("2")


cmd1.ExecuteNonQuery()


    Connections("test").Commit \'提交事务,所有操作生效



\'------------------------------------

Dim q As new OuterTableBuilder
q.TableName = "订单"
q.TableCaption = "1998年订单"
q.C
q.SelectString = "Select * Fro  m {td_jzpz}"
q.Build
MainTable=Tables("订单")


Tables("附加_Table1").DataSource=Tables("订单")


{td_jzpz}

在sql server2008r2 中可以看到 新建数据源,有td_jzpz表,用添加外部表的方法,也可读取

{td_jzpz} 这里总是报错,不知道是何原因,请指教
[此贴子已经被作者于2020/6/29 10:40:50编辑过]

--  作者:有点蓝
--  发布时间:2020/6/29 10:49:00
--  
报什么错?
--  作者:beijingboat
--  发布时间:2020/6/29 10:58:00
--  
加载“订单”失败,详见附件图
图片点击可在新窗口打开查看此主题相关图片如下:本.jpg
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2020/6/29 11:05:00
--  
添加的数据源没有提示的这个名称的表。检查一下是不是视图来的?
[此贴子已经被作者于2020/6/29 11:05:51编辑过]

--  作者:beijingboat
--  发布时间:2020/6/29 12:42:00
--  
不是视图,是单独拷贝的 .mdf 文件,不知道问题是不是在这里。另外,为何从菜单里面的导入外部数据源和数据表导入,就正常?
--  作者:有点蓝
--  发布时间:2020/6/29 13:38:00
--  
菜单里添加外部表使用的是菜单里设置的数据库。

4楼的代码已经把数据库附加到另外一个mdf数据库里,那么使用的是这个新附加的数据库,也就是这个新附加的数据库没有这个对应的表。