Maison >base de données >tutoriel mysql >Comment puis-je générer des erreurs personnalisées dans les fonctions MySQL ?

Comment puis-je générer des erreurs personnalisées dans les fonctions MySQL ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-02 12:21:10261parcourir

How Can I Raise Custom Errors in MySQL Functions?

Génération d'erreurs dans les fonctions MySQL

Pour garantir l'intégrité des données et gérer les entrées non valides dans les fonctions MySQL, la génération d'erreurs est essentielle. Dans MySQL 5.5 et versions ultérieures, un mécanisme puissant appelé signaux permet aux développeurs de créer des conditions d'erreur personnalisées.

Syntaxe des signaux

Les signaux utilisent la syntaxe suivante pour générer des erreurs :

SIGNAL SQLSTATE error_code SET MESSAGE_TEXT = 'error_message';

Où :

  • error_code : L'état SQL code d'erreur (par exemple, « 45000 »)
  • error_message : un message d'erreur personnalisé

Exemple d'utilisation

Considérez l'exemple suivant :

CREATE FUNCTION my_function(a INT, b INT) RETURNS INT
BEGIN
  IF a = 0 OR b = 0 THEN
    SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Invalid input: Zero values not allowed.';
  ELSE
    RETURN a * b;
  END IF;
END;

Cette fonction vérifie si l'un ou l'autre paramètre est égal à zéro et génère un erreur personnalisée si vraie.

Démonstration de ligne de commande

Vous pouvez tester la gestion des erreurs dans le client de ligne de commande en exécutant l'instruction suivante :

mysql> CALL my_function(0, 5);
ERROR 1644 (45000): Invalid input: Zero values not allowed.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn