Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Không cho phép tham số NULL đối với các thủ tục được lưu trữ trong MySQL / MariaDB

Bạn sẽ cần phải tự xác thực các giá trị thông số đã truyền. Nếu bạn đang sử dụng MySQL 5.5 trở lên, bạn có thể sử dụng 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 ;

Đây là SQLFiddle bản demo




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kết nối cơ sở dữ liệu không giải phóng sau khi hết thời gian chờ trong Glassfish

  2. MYSQL:Cách xác định hoặc lấy các biến chuỗi DÀI

  3. Nhiều vòng lặp WHILE trong PHP sử dụng cùng một truy vấn

  4. MySQL - Dấu phân tách hàng nghìn

  5. Cách làm cho MySQL xử lý UTF-8 đúng cách