给你一段别人的代码
Database1.StartTransaction;
try
ApplyUpdates;
Database1.Commit;
except
// Database1.Rollback;
// raise;
On E: EDBEngineError do
begin
Database1.Rollback;
for i := 0 to E.ErrorCount - 1 do
begin
case E.Errors.ErrorCode of
$2601:
ShowMessage('呵呵!不允许鍵值重复!');
$0021:
Showmessage('太糟糕了,系统发生故障!TMD');
$270b:
Showmessage('对不起,你的受到主外键约束!怎么样,很失望吧!');
$2b05:
Showmessage('太糟糕了,网络连接超时判负!TMD');
$0028:
Showmessage('锁定违例!');
$1200:
Showmessage('不能识别的SQL错误!呵呵,有事干了!');
$2501:
Showmessage('太糟糕了,你的内存不足!请使用N(N>=10000)兆内存');
$2605:
Showmessage('对不起,你所添加的数据违反外键约束!');
$2728:
Showmessage('你所操作的表不存在!');
$2801:
Showmessage('记录已经被其它用户琐定!');
$2a06:
Showmessage('数据引擎初始化错误!');
$2c01:
Showmessage('网络初始化失败!');
$2c07:
Showmessage('呜呜..呜呜!一个我不知道的网络错误,这不可能!');
$2c0d:
Showmessage('是谁干的!!服务器竟然没打开!');
$3e07:
Showmessage('初始化失败!');
$3303:
// ShowMessage('服务器端错误:一般的SQL错误!');
else
// //raise EDatabaseError.Create(E.Message);
end;//case
end;//for
end;//on EDBError
end;
CommitUpdates;
end;