我在数据库定义了一个字段ID为主键
则我在Delphi应用程序中来添加此字段ID的值为(0002),如果我再添加一个(0002)的值,则会出现错误,此错误应怎样解决,来向用户提示此字段ID为主键不能重复?我采用的try....E:edatabaseerror except....
可是得不出结果。
请各位高手指点一下。
则我在Delphi应用程序中来添加此字段ID的值为(0002),如果我再添加一个(0002)的值,则会出现错误,此错误应怎样解决,来向用户提示此字段ID为主键不能重复?我采用的try....E:edatabaseerror except....
可是得不出结果。
请各位高手指点一下。
然后在转换成自己的错误提示即可。
Adoconnection.execute(sqlString);
except
raise Exception.Create(intToStr(Adoconnection.Errors.Item[0].NativeError));
end
在上层捕获错误
tryexcept
on e:exception do
case strtoint(e.message) of
2627:
showmessage('主键错误');
end;
end;
未编译,大概是这个意思
可执行文件才可以正常显示异常
将eastphoenix的代码编写成一个Bool函数
注意在出现异常的地方加入跳出语句在你提交的时候调用这个Bool函数判断输入是否合理
在确保其他无误的情况下如果提交错误,就可以判定主键重复!
如:
if clientdataset.ApplyUpdates(-1)>0 then
begin
showmessage('该ID已经存在');
clientdataset.CancelUpdates
end;
.....不就可以了吗!!!