0

当我运行我的程序并按下我的登录按钮之一时,它说缺少连接或连接字符串连接字符串已经存在

procedure TFmLogin.BtnLogin2Click(Sender: TObject);
begin
  ADOUser.ConnectionString:=Connstr;
  ADOUser.TableName:='TblUser';
  ADOUser.Open;
  if ADOUser.Locate('Username', EdUsename.Text,[]) then    
  begin
    if EdPassword.Text=ADOUser['Pword'] then
    begin
      if ADOUser['AdminLevel']>=0 then
  begin
    FmBrowse.Delete;
    Close
  end
  else
  showmessage('password invalid.');
    End;
  end
  else
  Begin
showmessage('Username invalid.');
  end;
  Close;
end;

我在此过程中找不到任何应该寻找连接字符串的地方,并想知道是否有人可以帮助我找出哪里出错了

4

2 回答 2

0

通常在 ADO 中,您必须编写数据库的完整路径。

而你的是

Const ConnStr='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=cardb.mdb;Persist Security Info=False';

尝试更改 Source=cardb.mdb;源=[[完整路径]]\cardb.mdb;

希望这有效。

于 2013-06-02T08:18:28.803 回答
0

只要数据库与正在编译可执行文件的位置相同,路径就无关紧要。如果不是,那么是的,您需要按照 Dreamer64 的建议输入完整路径 + 他之前的连接auth,我认为他缺少用户名,他的connections字符串和未保存在组件上的密码。尝试 :

 Const ConnStr='Provider=Microsoft.Jet.OLEDB.4.0;'+
'Persist Security Info=False;'+
'User ID=[yourdbusername];'+
'Initial Catalog=[yourtablename];'+
'Data Source=cardb.mdb;';

现在ado component右键单击它并编辑字符串,在该构建字符串旁边,第一个选项卡应向您显示路径用户名和密码,填写密码和测试连接,如果测试成功,您就可以开始了。

于 2016-12-08T06:30:46.883 回答