急!哪位兄弟帮我解决这个异常类啊?多谢!

CSDNliuwei 2003-10-16 12:10:05
哪位兄弟知道怎么解决这个异常类啊?
我的程序点击BUTTON时,老是出现“ERROR”project1.exe raised exception class
EDBEngineError with message 'Key violation.'.Process stopped.Use
Step or Run to continue.当OK后再Run后则出现“ERROR”Key violation.
...全文
87 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
CSDNliuwei 2003-10-22
  • 打赏
  • 举报
回复
多谢各位捧场。hignbury()指的什么键值冲突了?下面是Bitbtn代码:
procedure Tmodify.BitBtn1Click(Sender: TObject);
var wname:string;
userid:integer;
begin
if datam.Query1.RecordCount<=0 then
begin
showmessage('当前数据集无用户');
exit;
end;
if (l_dzm.Caption<>datam.query1.FieldByName('地址码').asstring)and(l_dzm.Caption<>'') then
if not checkunique(wname,'地址码',l_dzm.caption) then
begin
if wname='空口' then
begin
if application.MessageBox('该地址码已在库中存在,并且为"空口"信息,修改后将把原空口信息删除掉,是否进行修改?','提示',MB_OKCANCEL + MB_DEFBUTTON1)
= IDOK then
with datam.Query3 do
begin
close;
sql.Clear;
sql.Add('select 地址码 from w_jb where 地址码='''+l_dzm.caption+'''');
open;
delete;
close;
end;
end
else
begin if application.MessageBox('库中已有该地址码信息,是否还要提交本次修改?','提示',MB_OKCANCEL + MB_DEFBUTTON1)
<> IDOK then
begin
e_xh.SetFocus;
exit;
end;
end;
end;
postmodify;
userid:=datam.Query1.fieldbyname('用户号').asinteger;
dataM.Query1.close;
datam.Query1.open;
datam.Query1.Locate('用户号',userid,[loCaseInsensitive]);
addlog(op_xiugai+' '+inttostr(datam.query1.fieldbyname('用户号').asinteger)+'号 '+datam.query1.fieldbyname('用户名').asstring);
w_main.StatusBar1.Panels[1].Text:='修改成功';
end;
佣工7001 2003-10-16
  • 打赏
  • 举报
回复
对看看代码吧
47522341 2003-10-16
  • 打赏
  • 举报
回复
楼主将button的代码粘上来吧;
highbury 2003-10-16
  • 打赏
  • 举报
回复
键值冲突了

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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