我在edit1里面输入的字符是10个,但运行时仍然会出现 '读者借书证号不正确' 的对话框,为什么啊?百思不得其解啊而且把判断edit1的那段代码屏蔽掉后,数据库中并没有被更新,高手帮忙啊if RadioButton2.Checked then
begin
if Length(Edit1.Text)<>10 then
begin
MessageDlg('读者借书证号不正确',mtError,[mbok],0);
Exit;
end;
try
with DataModuleADO.ADOQuery1 do
begin
SQL.Clear;
SQL.Add('update Reader set Name=:ReaderName,Sex=:Sex,IDCardNo=:IDCardNo where ReaderID=:ReaderID');
Parameters.ParamByName('ReaderID').Value:=Edit1.Text;
Parameters.ParamByName('ReaderName').Value:=Edit2.Text;
parameters.ParamByName('Sex').Value:=IntToStr(ComboBox1.ItemIndex);
Parameters.ParamByName('IDCardNo').Value:=Edit3.Text;
ExecSQL;
end;
except
MessageDlg('修改<'+Edit1.Text+'>失败',mtError,[mbok],0);
Exit;
end;
MessageDlg('修改成功',mtInformation,[mbok],0);
end;
begin
if Length(Edit1.Text)<>10 then
begin
MessageDlg('读者借书证号不正确',mtError,[mbok],0);
Exit;
end;
try
with DataModuleADO.ADOQuery1 do
begin
SQL.Clear;
SQL.Add('update Reader set Name=:ReaderName,Sex=:Sex,IDCardNo=:IDCardNo where ReaderID=:ReaderID');
Parameters.ParamByName('ReaderID').Value:=Edit1.Text;
Parameters.ParamByName('ReaderName').Value:=Edit2.Text;
parameters.ParamByName('Sex').Value:=IntToStr(ComboBox1.ItemIndex);
Parameters.ParamByName('IDCardNo').Value:=Edit3.Text;
ExecSQL;
end;
except
MessageDlg('修改<'+Edit1.Text+'>失败',mtError,[mbok],0);
Exit;
end;
MessageDlg('修改成功',mtInformation,[mbok],0);
end;
解决方案 »
- 为什么我从别人代码中提取的代码,执行起来资源反而很高?
- 领导要我把他做的组件做成activeX控件,又碰见问题了,大家帮忙看看!
- 在自己的软件系统中启动其他软件时遇到的问题,分数不够可以追加!!!!
- 求D8和D7的补丁
- 请问:OCX控件的接口函数修改后,在Delphi中应经过怎样的步骤重新调用新的接口?
- 我做了一个组件,包含了EhLib的DBGridEh,在做组件包时,提示错误。
- 如何使用fastreport打印stringgrid时,强制换页(up有分)?
- 请问:win2k下我的exe执行时候老报告:a.exe错误,请重新启动。错误已经被记录日志中。如何修改让它显示错误在那个dll里面?(lk2000)
- 雪地全裸跪求:delphi2006控件添加问题
- 一个关于数据库更新的问题
- 今天下载了一个通信方面的程序.发现了一个后缀为.dsn的文件.想问-----------
- 声明了一个ADODataSet变量,引用时出错,请大侠指点(附代码)。
以前发现过BUG,建议改成直接的字符串组合。
这样测试没有发现错误吧?然后单步运行看看它为什么要进去
这应该是你输入的问题,我刚才是将你的代码拷了试验了一下,没有问题的,不过最好写成 Length(Trim(Edit1.Text))<>10,这样可以防止不小心多输入了空格。
edit1里的字符是从旁边的ListView中获取的
我一点ListView的一行,里面的内容自动加到edit里
现在先不谈edit,重要的问题是我把判断代码屏蔽后,数据库里没有更新,为什么啊
update Reader set Name=Haison,Sex=male,IDCardNo=12345 where ReaderID=1234567890
如果没有错误的话,可能就是你的数据库连接有问题,或者你的ReaderID没有和你的数据库中的已存在的值匹配,也就是你的edit1.txt输入的有问题,导致没有更新。