在Delphi5中压缩设置了数据库密码的ACCESS2000数据库(100分)

  • 主题发起人 主题发起人 BeWorldMan
  • 开始时间 开始时间
B

BeWorldMan

Unregistered / Unconfirmed
GUEST, unregistred user!
我已经做出了用Delphi5压缩不设置数据库密码的ACCESS2000数据库的程序,
我是用DAO3.6 DBEngine的compactDatabase函数来实现的(参考高手的程序),
但设置了数据库密码后,程序报错:试图打开已被独占打开了的数据库,
独占打开者是我在ACCESS中设置数据库密码的管理员身份,
请各位点拨,指点迷津
 
压缩是肯定要独站啊
 
你说得对,压缩是需要拥有独占打开的权限,这我在ACCESS2000帮助里已看到,
只是不知在压缩时怎样编码实现以独占方式打开数据库,即编程实现获取独占权限,
请你再发高见
 
那位ADO版主、坛主,快帮助我
 
BeWorldMan:
能不能把您使用压缩ACCESS2000数据库的程序mail给我一份?
我一直想知道是怎么做的,但一直没有机会找到合适的资料
所以。。。

要多少分,好说,您看行么?

再次感谢您!

mail:
h@sun.net.cn

(对不起了,借宝地一用,下次不敢了)
 
你必须保证当时没有打开该数据库。
 
我没有试过
不过在用access的时候,必须关闭当前数据库才能够压缩
不打开数据库能不能压缩它?
 
坛主大虾,快帮我参谋参谋
 
Connect.Connected:=false;
ADOConnection1.Connected:=false;
ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(Application.ExeName)+
'你的数据库名.mdb'+';Persist Security Info=False;Jet OLEDB:Database Password=你的密码,不带引号';
ADOConnection1.Connected:=true;
 
感谢Seoul_BJ君关注我的问题,我已经试过用两个ADOCONNETION,但还是不管用,
你的方法好象只是回答如何在ADO中连接设置了密码的ACCESS数据库
 
我的问题是不是偏了点,没人过问了,那位大虾能帮我,请不要真人不露像
 
我的经验是:Ole db或access好像有bug,我所碰到问题也一样!
 
我想VB能实现的DELPHI应该不会做不到,OLE DB比较底层,对ACCESS的压缩及修复
我所见到的高手都用的是DAO,感谢harmer关注我的问题
 
你在程序中是怎样调用DAO3.6 DBEngine的compactDatabase的?
能不能把程序Email给我一份?(Email: my-emails@yeah.net)
我认为你先把所有的链接断掉:ADOConnection1.Connected:=false;
再用compactDatabase函数,带密码压缩的格式:
CompactDatabase (SourceFilename, TargetFileName, '', 0, ';pwd=你的密码');


 
你提供的答案令我茅塞顿开,多谢你点通,100分,请别嫌少!
 
后退
顶部