sql >> Base de Datos >  >> RDS >> Mysql

No permitir parámetros NULL para procedimientos almacenados en MySQL/MariaDB

Necesitará validar los valores de los parámetros pasados ​​usted mismo. Si está utilizando MySQL 5.5 y superior, puede utilizar SIGNAL .

DELIMITER //
CREATE PROCEDURE my_procedure (IN param1 INT)
BEGIN
  IF param1 IS NULL THEN
    SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'NULL is not allowed.';
  END IF;
  -- do whatever 
END//
DELIMITER ;

Aquí hay un SQLFiddle demostración