以下事务没有问题。但是,一旦事务失败,例如,列号不匹配或任何其他原因,它将只显示错误消息“'SQLWARNING:Linux系统时请求$ {LINUX_SYSTEM_TIME}插入失败。数据将被回滚'“但没有错误信息显示实际的失败。我可以知道是否有任何MySQL方式在MySQL事务中显示错误消息?谢谢。
docker-compose up -d
答案 0 :(得分:1)
只是为了突出我从@@ Solarflare得到的答案。 Resignal是一个简单的解决方案(MySQL exception handler access exception being handled):
DECLARE EXIT HANDLER FOR SQLWARNING
BEGIN
ROLLBACK;
SELECT 'SQLWARNING: whatever error message';
RESIGNAL;
END;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
SELECT 'SQLWARNING: whatever error message;'
RESIGNAL;
END;
答案 1 :(得分:0)
启用错误记录。 http://www.pontikis.net/blog/how-and-when-to-enable-mysql-logs有一个很好的教程。