如何在程序中更改别名指向的数据库?(50分)

  • 主题发起人 主题发起人 lkpc
  • 开始时间 开始时间
L

lkpc

Unregistered / Unconfirmed
GUEST, unregistred user!
别名为demo,指向数据库db1.db,
在程序中,我想把别名指向的db1改为db2,如何实现。
先关闭当前的,在用DBI函数设定新的,然后再打开等。

但如何关闭呢,特别是现在已经有一些表被打开,如何重新设定后再打开。
好像用DBE的API函数可以作到,但我只能在没有打开原来的之前进行更改,
若打开后我就不知道如何关闭了!请高手指点!
 
用Tdatabase,自己修改参数,不用别名。
 
不用别名是不行的,因为我所有的数据库组件都是用的别名,足有几十个,程序不能
再改动了。我现在有一个方法是在程序启动后,立即修改别名指向新的数据库。但如果
打开了数据窗体,我现在没法改了,只能让用户重新启动程序后马上修改,这样还可以。
我现在就想问一下,如何无需重新启动程序就可以改变指向新的数据库。当然,
新数据库和原来的数据库的结构都是一样的,只不过记录的内容不一样。
 
用Tdatabase,修改参数(数据库的
 
对于已经打开的数据表的别名,当然不能修改引擎的Database指向,否则连接的table
如何知道要连接这些表呢,所以必须首先关闭Database的连接,有几十个别名就用
几十个TDatabase作连接,一次搞定,需要切换的时侯,直接修改TDatabase的参数,

另外的办法是在当前程序需要切换数据库的时侯,启动另外的EXE程序,通过BDE API
修改连接参数,这时候原有的表都已经关闭,在第二个程序修改结束后自动启动原有的
程序
 
在程序中先close Tdadabase,
用Tdatabase,修改参数
然后OPEN

或在程序中动态建别名
当然步骤还是与上面一样的
 
多人接受答案了。
 
后退
顶部