缺少连接或connstr delphi

时间:2013-04-11 12:00:33

标签: delphi delphi-xe3

当我运行程序并按下其中一个登录按钮时,它表示缺少连接或连接字符串 连接字符串已经存在

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;

我在这个程序的任何地方都找不到它应该找一个连接字符串,并想知道是否有人可以帮我找出我出错的地方

2 个答案:

答案 0 :(得分:0)

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

你的是

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

尝试更改Source = cardb.mdb; to Source = [[full path]] \ cardb.mdb;

希望这有效。

答案 1 :(得分: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右键单击它并编辑字符串,在该构建字符串旁边,第一个选项卡应该显示路径用户名和密码填写密码和测试连接,如果测试成功,则是很高兴。