odbc连接数据库的错误!!!

sunnyqboy 2008-07-25 01:24:20
我用odbc连接sql server,出现错误
Project sms.exe raised exception class EDBEngineError with message'Unknown user name or password [Microsoft]{ODBC SQL Server Driver][SQL Server]用户'(null)'登录失败。原因:未与信任SQL Server 连接相关联。

我从网上查阅后安装了sql server补丁。将sql server验证方式改为混合验证方式,可是怎么还不对啊?我问别人,他们说odbc不保存密码和用户名!是不是我的代码有问题?请大家看看!我通过设置断点发现程序运行到 if RecordCount > 0 then这句时出现错误!


unit login;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, DBTables;

type
Tloginform = class(TForm)
Label2: TLabel;
Name_Edit: TEdit;
Password_Edit: TEdit;
Label3: TLabel;
Button1: TButton;
Button2: TButton;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
loginform: Tloginform;

implementation
uses start,admin;

{$R *.dfm}

procedure Tloginform.Button2Click(Sender: TObject);
begin
Close;
end;

procedure Tloginform.Button1Click(Sender: TObject);
var
aname,apassword,sqlstr:string;
begin
if(length(trim(name_edit.Text)) > 0) or (length(trim(password_edit.Text)) > 0) then
begin
aname:=trim(name_edit.Text);
apassword:=trim(password_edit.Text);
sqlstr:='select * from yh where (yhm='''+aname+''') and(mm='''+apassword+''')';
with tQuery.Create(nil) do
begin
try
Close;
sessionName:=start_form.Database1.SessionName;
DatabaseName:=start_form.Database1.DatabaseName;
SQL.Clear;
SQL.Add(sqlstr);
Active:=True;
if RecordCount > 0 then
begin
Admin_Form.Show;
loginform.Close;
end
else
begin
showmessage('请确认登录的用户名和密码是否正确!');
name_edit.SetFocus;
name_edit.SelectAll;
end;
finally
Free;
end;
end;
end
else
begin
showmessage('请输入登录用户名和密码!');
name_edit.SelectAll;
end;
end;
end.

...全文
110 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunnyqboy 2008-07-27
  • 打赏
  • 举报
回复
谢谢大家!是database没连接上数据库!
sunnyqboy 2008-07-25
  • 打赏
  • 举报
回复
如何确认database1与数据库连接上了啊?怎样在程序中动态建立odbc连接?
kugoo_2006 2008-07-25
  • 打赏
  • 举报
回复
用户'(null)'登录失败。原因:未与信任SQL Server 连接相关联。

没有连接上数据库
wjbwjb 2008-07-25
  • 打赏
  • 举报
回复
SQL.Clear;
SQL.Add(sqlstr);
Active:=True;
Open;
kampan 2008-07-25
  • 打赏
  • 举报
回复
database是不是就是Delphi自带那个?还不如Access好用呢
yangkunjie 2008-07-25
  • 打赏
  • 举报
回复
database1未连接上造成的,估计是缺少用户名和密码的参数
需要在程序动态建立odbc的连接
阿三 2008-07-25
  • 打赏
  • 举报
回复
Database1确认与数据库联上了吗

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧