以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  这两种切换数据源的方法都是等效的吗?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=23663)

--  作者:Fotable
--  发布时间:2012/9/16 10:01:00
--  这两种切换数据源的方法都是等效的吗?

我有两个数据库结构完全相同的数据源。一个Access用来开发测试,一个Sql远程数据库用来真实运行的。

在开发过程中 经常要切换这两个数据源。

用什么办法呢?

方法一:重定向法

在我的外部数据源中只有一个数据源叫做defaultconnection 链接字符串是设置成链接远程sql的。

1、我新建一个temp的数据源指向我本地的access数据库。

2、重新定我的defaultconnection 数据源中的所有表到 temp数据源。

3、删除defaultconnection数据源。

4、新建一个defaultconnection数据源,指向本地的access数据库。

5、删除temp数据源

 

通过这样5个步骤呢 我就让defautconnetion指向了 本地的access数据库

方法二:

在项目事件 beforeconnectouterdatasource 里面设置代码读取 conn.txt  文件。直接在conn.txt文件里更改defaultconnection的连接字符串为 本地access的连接字符串。

 

Dim connFile As String = e.ProjectPath & "conn.txt"
If e.Name = "defaultconnection" Then
    If Filesys.FileExists(connfile) Then
        Dim ip As String = FileSys.ReadAllText(connFile)
        e.ConnectionString = ip.trim
    Else       
        messagebox.show("数据库连接配置文件不存在,请建立配置文件."  ,"提示"  )
        Syscmd.Project.Exit()
    End If
End If

 

明显用第二种方法简单的多。这两种方法都可以吗,是等效的吗?

大家还有没有更好的方法分享一下。


--  作者:布莱克朱
--  发布时间:2012/9/16 14:47:00
--  
数据源只要生成一次就可以用了   你其实做个窗口,窗口上给两个选项 一个是ACCESS数据源,另外一个为SQL数据源,做个按钮  利用动态增加数据源的办法绑定. 每一次打开 跳出这个窗口切换一下数据源  等开发完了 正式绑定要用的数据源.