Předané hodnoty parametrů byste museli sami ověřit. Pokud používáte MySQL 5.5 a vyšší, můžete využít 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 ;
Zde je SQLFiddle demo