在三层架构中,客户端登陆代码:
procedure TForm2.Button1Click(Sender: TObject);
const
sSql :string = 'select Password from Popedom where';
var
sSelect,UserPass,UserName,Power : string;
i,j,t:integer;begin
if (Form2.NameEdit.Text <> '') and (Form2.PassEdit.Text <> '') then
begin
if Form2.ComboBox1.Text = '一般用户' then
t := 1
else t:=0 ;
UserName := Form2.NameEdit.Text;
sSelect:=sSql+' UserName='''+UserName+'''';
CheckClient.Close;
CheckClient.CommandText := sSelect;
CheckClient.Open; //如果有这个记录
if CheckClient.RecordCount=1 then
begin
UserPass := CheckClient.FieldByName('PassWord').asString;
Power := CheckClient.FieldByName('Mark').AsString;
end;
i:= CompareStr(UserPass,Form2.PassEdit.Text);
j:= CompareStr(inttostr(t),Power);
if (i=0) and (j=0) then
if t=0 then
begin
Form3.Show;
Form2.Hide;
end
else
begin
Form4.Show;
Form2.Hide;
end
else
MessageDlg('密码或权限错误!', mtWarning, [mbOK], 0)
end
else
MessageDlg('用户名或密码不能为空!',mtWarning,[mbOK],0)
end;表定义:
create table Popedom(
UserName varchar2(15) primary key,
Password varchar2(15) not null,
char(1));
当登陆时报错,project client.exe raised exception class eoleexception
with message'commandtext changes are not allowed'.process stopped.
use step or run to continue.
谁能告诉我错在那儿了?
procedure TForm2.Button1Click(Sender: TObject);
const
sSql :string = 'select Password from Popedom where';
var
sSelect,UserPass,UserName,Power : string;
i,j,t:integer;begin
if (Form2.NameEdit.Text <> '') and (Form2.PassEdit.Text <> '') then
begin
if Form2.ComboBox1.Text = '一般用户' then
t := 1
else t:=0 ;
UserName := Form2.NameEdit.Text;
sSelect:=sSql+' UserName='''+UserName+'''';
CheckClient.Close;
CheckClient.CommandText := sSelect;
CheckClient.Open; //如果有这个记录
if CheckClient.RecordCount=1 then
begin
UserPass := CheckClient.FieldByName('PassWord').asString;
Power := CheckClient.FieldByName('Mark').AsString;
end;
i:= CompareStr(UserPass,Form2.PassEdit.Text);
j:= CompareStr(inttostr(t),Power);
if (i=0) and (j=0) then
if t=0 then
begin
Form3.Show;
Form2.Hide;
end
else
begin
Form4.Show;
Form2.Hide;
end
else
MessageDlg('密码或权限错误!', mtWarning, [mbOK], 0)
end
else
MessageDlg('用户名或密码不能为空!',mtWarning,[mbOK],0)
end;表定义:
create table Popedom(
UserName varchar2(15) primary key,
Password varchar2(15) not null,
char(1));
当登陆时报错,project client.exe raised exception class eoleexception
with message'commandtext changes are not allowed'.process stopped.
use step or run to continue.
谁能告诉我错在那儿了?
解决方案 »
- ScrollBar问题?
- 关于rave的问题,如何打印出dbgrid中查出的多条记录!
- 关于rave的问题。如何在程序中,动态设置组件DATATEXT的DATAFIELD属性?急~~~~
- 我用access建的表,有一个字段(stop)内容太多,在写程序时s1:=query1.fieldbyname('stop').asstring; s1得不到全部内容,请问我该怎么办
- 老事新做:关于超星格式转化为图片。
- Delphi5中有关报表打印的问题(在线等!!!!!!!!!)
- 接一些DELPHI+SQL的项目提高自己有需要的直接进来吼一下!198人关于DELPHI的QQ大群!
- 怎样使用SetWindowLong来从新设置某一应用程序的消息处理
- DELPHI中的视图怎么这样呀?
- 为什么在设计期间可以在DBGRID里看到字段,在运行期间就看不到了呢???
- 请问哪有D6的IExpress打包程序下载?D5的可以打包D6程序吗?
- 高兴,终于有个散分的理由了…
再不行的话,来个狠的,把对应的应用服务器程序的Dataset组件,DataSetProvider组件,甚至客户端的ClientDataset组件删除,然后再设置过一遍。
我菜,就没办法时就用菜方法,见谅啦。