一个问题,很着急,送分!!! 在增加删除操作的时候,游标总是出界,怎么办啊?在编写登陆框的时候,总是出现Error mapping filed?!怎么办啊?!兄弟在线等 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 delphi7连接SQL server数据库时候的问题登陆框要到数据库中的表中取数据 procedure TPasswordDlg.OKBtnClick(Sender: TObject);var MaxRetries : Integer;begin MaxRetries := 3; Inc( FRetries ); SQLDataSet1.Close; SQLDataSet1.CommandType := ctQuery; SQLDataSet1.CommandText := 'select * from AppUser where UserId =:pID and PassWord =:pPWD'; SQLDataSet1.Params.ParamByName('pID').Value := EdtName.Text; SQLDataSet1.Params.ParamByName('pPWD').Value := EdtPswd.Text; SQLDataSet1.Open;if SQLDataSet1.RecordCount >0 then ModalResult := mrOK else begin if FRetries >= MaxRetries then begin ShowMessage( '非法用户,请核对以后再试!' ); ModalResult := mrCancel; end else begin //AppUser ShowMessage( '密码错误,请核对以后再试!' ); EdtName.text := ''; EdtName.SetFocus; EdtPswd.Text := ''; ModalResult := mrNone; end; end;end;出现Error mapping filed的问题 你Debug一下,看执行到那儿出的错 问题还是自己解决了很奇怪SQLDataSet1.RecordCount在我机器上不可以识别下面是修改后的代码procedure TPasswordDlg.OKBtnClick(Sender: TObject);var MaxRetries : Integer; num : Integer;begin MaxRetries := 3; Inc( FRetries ); SQLConnection1.Connected :=true; num := 0; SQLDataSet1.Close; SQLDataSet1.CommandText := 'select count(*) as rows from AppUser where UserId =:pPWD and UserName =:pName'; SQLDataSet1.Params.ParamByName('pPWD').AsString := EdtPswd.Text; SQLDataSet1.Params.ParamByName('pName').AsString := EdtName.Text; try SQLDataSet1.Open; except ShowMessage('Open Error'); end; try num := SQLDataSet1.Fields.FieldByName('rows').AsInteger; except ShowMessage('Move Error'); end;if num >0 then ModalResult := mrOK else begin if FRetries >= MaxRetries then begin ShowMessage( '非法用户,请核对以后再试!' ); ModalResult := mrCancel; end else begin //AppUser ShowMessage( '密码错误,请核对以后再试!' ); EdtName.text := ''; EdtName.SetFocus; EdtPswd.Text := ''; ModalResult := mrNone; end; end;end; 用odbc数据源table query 的recordcount值不正确 这个sql语句怎么写啊 DBGRIDEH分组汇总 如何关闭当前窗口后打开另外一个窗口 读写文件的问题 ?!帮帮忙啊 三个问题,急待回答 请教:delphi中的续行符是什么 在dbgrid1中如何通过程序选择多行????(在线等待) 哪有DELPHI6.0下载 ActiveDLL的问题 向大家问一个函数,请大家指教!! 请问:李维的关于borland的帖子可以在什么地方看到啊??? 数据更新
登陆框要到数据库中的表中取数据
var
MaxRetries : Integer;
begin
MaxRetries := 3;
Inc( FRetries );
SQLDataSet1.Close;
SQLDataSet1.CommandType := ctQuery;
SQLDataSet1.CommandText := 'select * from AppUser where UserId =:pID and PassWord =:pPWD';
SQLDataSet1.Params.ParamByName('pID').Value := EdtName.Text;
SQLDataSet1.Params.ParamByName('pPWD').Value := EdtPswd.Text;
SQLDataSet1.Open;
if SQLDataSet1.RecordCount >0 then
ModalResult := mrOK
else
begin
if FRetries >= MaxRetries then
begin
ShowMessage( '非法用户,请核对以后再试!' );
ModalResult := mrCancel;
end
else
begin
//AppUser
ShowMessage( '密码错误,请核对以后再试!' );
EdtName.text := '';
EdtName.SetFocus;
EdtPswd.Text := '';
ModalResult := mrNone;
end;
end;
end;出现Error mapping filed的问题
很奇怪SQLDataSet1.RecordCount在我机器上不可以识别
下面是修改后的代码procedure TPasswordDlg.OKBtnClick(Sender: TObject);
var
MaxRetries : Integer;
num : Integer;
begin
MaxRetries := 3;
Inc( FRetries );
SQLConnection1.Connected :=true;
num := 0; SQLDataSet1.Close;
SQLDataSet1.CommandText := 'select count(*) as rows from AppUser where UserId =:pPWD and UserName =:pName';
SQLDataSet1.Params.ParamByName('pPWD').AsString := EdtPswd.Text;
SQLDataSet1.Params.ParamByName('pName').AsString := EdtName.Text;
try
SQLDataSet1.Open;
except
ShowMessage('Open Error');
end;
try
num := SQLDataSet1.Fields.FieldByName('rows').AsInteger;
except
ShowMessage('Move Error');
end;if num >0 then
ModalResult := mrOK
else
begin
if FRetries >= MaxRetries then
begin
ShowMessage( '非法用户,请核对以后再试!' );
ModalResult := mrCancel;
end
else
begin
//AppUser
ShowMessage( '密码错误,请核对以后再试!' );
EdtName.text := '';
EdtName.SetFocus;
EdtPswd.Text := '';
ModalResult := mrNone;
end;
end;
end;