(一)使用固定的ADOConnection1
Delphi下连接不带密码的Access数据库,比较简单,只需按照adoconnection中的connectstring属性一路设下去,测试成功后将build前的那段拷出来再做程序适应性修改。不过要注意在oledb提供程序中应当选择Microsoft.Jet.OLEDB.4.0 provider。
如果是带有密码的数据库,这么连接就出现问题了。常见的操作是用户名为admin,然后输入密码,测试时出现错误信息:“测试连接失败,因为初始化提供程序时发生错误。无法启动应用程序。工作组信息文件丢失,或是已被其它用户以独占方式打开。”
在网上搜索了一下,遇到的这个问题的朋友还真多,光csdn上就不少问的,但是没有出现能解决问题的方法。
综合查找的资料,得到一个比较快捷的方法,具体如下:
1、在“连接”这页中,下方有“输入登录数据库的信息”用户名:admin,并在下面选择“空白密码”
2、在“所有”这页的框里的第六项 Jet OLEDB:Database Password,双击弹出对话框,在属性框中输入"密码"。
好了,如果你的密码输入正确,测试应该就通过了。
(二)经常使用连接字符的
//就一句话,看懂了,就会了:Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=admin;Data Source=MAIN.mdb;Mode=ReadWrite;Persist Security Info=True;Jet OLEDB:Database Password=文件的密码填写在这里
Delphi中使用ADO连接带密码的Access
try
self.ADOConnection1.Close;
//无密码连接方式 Password="";
//gDBConn:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=MyDB.mdb;Persist Security Info=True';
//有密码连接方式 Jet OLEDB:Database Password=delphi7;
gDBConn:='Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=123456;Data Source='+ExtractFilePath(application.ExeName)+'MyDB.mdb;Persist Security Info=True';
self.ADOConnection1.ConnectionString := gDBConn;
self.ADOConnection1.Open;
except
//raise;
self.ADOConnection1.Close;
self.ADOConnection1.Free;
application.MessageBox('不能连接到数据库!','提示信息',64);
application.Terminate;
end;
————————————————
版权声明:本文为CSDN博主「cadenza7」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/cadenza7/article/details/4182939/