如何压缩加密的*.mdb数据库?(50分)

  • 主题发起人 主题发起人 老赵
  • 开始时间 开始时间

老赵

Unregistered / Unconfirmed
GUEST, unregistred user!
无口令没问题,加入口令后就干不了啦?Why?有办法吗?
 
压缩 Access 数据库或 Access 项目疑难解答:
Microsoft Access 数据库或 Microsoft Access 项目不能压缩的原因有下列几点:
1.磁盘空间已经不能同时容纳原始与压缩的 Access 数据库或 Access 项目版本。
请删除不必要的文件后重试一次。
2.没有“打开/运行”和“以独占方式打开”Access 数据库的权限。如果没有拥有
此数据库,请与其拥有者联系以决定是否可以获得这个数据库的这两个权限。如果
拥有此数据库,必须更新权限。
3.其他用户打开了 Access 数据库或 Access 项目。
4.Access 数据库或 Access 项目位于只读的共享网络中,或它的文件属性设置为
“只读”。

 
您说的不是我要问的问题。我已经解决了,那也谢谢了。^_^
另一问题:
如何在delphi中更改(或撤销)mdb的口令?现在我都是进入office access中进行,
太麻烦。
 
我所知道的不完全依赖Access压缩Access数据库有两种方法,DAO和ADOX不知道你用的是
那一种,两种方法压缩都是可以的。流程都差不多,请在建立DAO或ADOX时加上password
DAO:加上pwd:='yourpassword';
ADOX:加上DataBase PassWord='yourpassword';
解密码也一样,断开联接,用一个DAO或ADOX将库考出,删除原库,新库改名,重新联接就好了。
 
解密忘说了,应该是
断开联接,用一个不加密码的DAO或ADOX将库考出,删除原库,新库改名,重新联接就好了
 
http://202.96.70.228/cakk/delphi/dbengine/JetCompactUtilit40.exe
 
to 杜宝:
您说的只是将库的口令清掉,实际上有专门的口令破解程序。
我要说的是:
在delphi程序中能够设定、更改、撤销口令,而不必进入office access中进行,
太麻烦。
 
改口令不也一样吗?在新建库中设好你输入的口令,再用上述的方法拷贝就是了。我就是这
样作的。实际上对于DAO和ADOX的这种功能来说,都是相当于在程序中实现一个类似于
DataPump的功能:分别建两个联接,打开两个联接,再全部拷贝。所以只要设置了目标联接
中设了新密码,就可以将原数据库中的数据拷出,再删除、更名。就可做到你要的功能!!!

BTW:一般的口令破解程序不见得一定有用吧?你给数据库设一个12个字的密码试试。
 
to 杜宝:
您说的有道理,但新建库如何加入口令?不会到access中吧?
 
to zjlcc
您说的是哪个引擎吧?(dao36.dll)咋用啊(更改口令)。
 
多人接受答案了。
 
后退
顶部