我希望这不仅仅是重复这个问题。
我已经阅读了文档,但我认为我还没有完全理解如何正确使用它。
我想捕获存储过程中引发的错误并将这些错误记录在表中。这主要是出于实验目的。我想知道有没有办法捕获任何错误,然后将代码和错误记录到表中。
到目前为止,我似乎必须为每个错误声明一个不同的处理程序。这是正确的还是有办法捕获所有错误并获取代码和消息。
例如,在每个存储过程中,我声明了几个处理程序
DECLARE EXIT HANDLER FOR 1062
BEGIN
SELECT 'Attempt to create a duplicate entry occurred';
END;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
SELECT 'Unexpected Error Ocurred';
END;
代替
SELECT 'custom message';
我想要做
INSERT INTO errorLogs(code, message);
如果不声明大量处理程序并手动添加每个代码,这是否可能?
非常感谢任何为我指明正确方向的帮助。