sql >> Databasteknik >  >> RDS >> Mysql

MySQL undantagshanterarens åtkomstundantag hanteras

Ser ut som RESIGNAL är vad du letar efter.

DELIMITER $$

DROP PROCEDURE IF EXISTS `test`.`resig` $$
CREATE PROCEDURE `test`.`resig` ()
BEGIN

DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
  SELECT 'I executed something before throwing the error' as `this_works`;
  RESIGNAL;
END;

SELECT foo FROM bar WHERE baz = 0;

END $$

DELIMITER ;


mysql> call resig();
+------------------------------------------------+
| this_works                                     |
+------------------------------------------------+
| I executed something before throwing the error |
+------------------------------------------------+
1 row in set (0.00 sec)

ERROR 1054 (42S22): Unknown column 'foo' in 'field list'

mysql>



  1. Hur man visar eller visar verktygsfältet Snabbåtkomst i Word, Excel och PowerPoint

  2. laddar enwiki-latest-categorylinks.sql till mysql

  3. Något liknande Hibernate i PHP?

  4. JDBC-url för MySQL-konfiguration för att använda utf8-teckenkodning