1.0版下的数据库如何才能和3.0版下的数据库在改变时保持同步? (50分)

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

liuxiaoqing

Unregistered / Unconfirmed
GUEST, unregistred user!
在1。0下我用BDE建立了一个数据库,并建立了一个浏览程序,在3。0下的程序中需要对这个数据库作修改,但是却发现在3。0下的做的修改并不能及时反映到1。0 下的程序中,1。0做的修改也不能反映到3。0的程序中。我用的数据库是PARADOS 5。0,我想大概是由于我用了1。0和3。0俩个BDE的缘故,
我后来通过database属性中CONNEDTED的TRUE和FASE可以实现,但我想这可能影响远行的实时性。不知那位还有高招。
 
到深度立宪去找个例子,使用BDE API可以解决
 
两个程序互相通信,当一个程序修改后通知另一个程序重新读取数据库。
单机上可以用自定义消息,网络上用Socket.
 
chenke:
由于是在一台计算机的两个不同版本上,请稍加详细的说明。
CJ:我到深度立宪找了一下,没有发现我要的东西,那些好象都是
用同一个BDE ,
不知能否将两个版本的BED用一个代替,我觉得数据控件的感应能
力都是由BDE来接收消息和发送消息来完成的,不同版本的BDE只对
本版本的数据控件有感应。
 
就是当一个程序修改了数据库的内容后,发送消息给另一个程序,
另一个程序再使用database属性中CONNEDTED的TRUE和FASE重新读取数据库,
以保持数据的实时性.
发送消息:sendmessage;
 
数据写如数据库就应该可以刷新!
 
他用的是两个BDE嘛.
 
如果在一个机器上为什么用2个版本的BDE?生机你的程序吧!
解决方法
1 写文件统治
2 定时刷新
3 用SEND MESSAGE,详细见<DELPHI高级开发指南>
4 升级到统一版本
5 DDE
 
最后我解决的方法是通过加上一个server就可以了,它能接受不同版本的BED。
 
深度中有这样的一个控件,TTABLE,TQUERY类型,具有自动访问功能,
当硬盘中数据库数据改变的时候,自动更新控件。
 
后退
顶部