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

Giá trị cột không đổi trong bảng MySQL

Vì vậy, tại đây bạn có thể tìm thấy một cách thông qua MYSQL TRIGGER .

Bảng mẫu:

DROP TABLE IF EXISTS `constantvaluetable`;
CREATE TABLE `constantvaluetable` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `constValue` int(11) NOT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB;

Kích hoạt:

DROP TRIGGER IF EXISTS trigger_const_check;
delimiter //
CREATE TRIGGER trigger_const_check BEFORE INSERT ON constantvaluetable 
    FOR EACH ROW 
  BEGIN 
        IF NEW.constValue <> 71 THEN 
        SIGNAL SQLSTATE '45000' SET message_text ='Only allowed value is 71';
        END IF; 
  END //
delimiter ;

Kiểm tra:

INSERT INTO constantvaluetable(constValue) VALUES(71);

INSERT INTO constantvaluetable(constValue) VALUES(66);

Kết quả:

Câu lệnh chèn đầu tiên sẽ thành công.

Câu lệnh chèn thứ hai sẽ không thành công. Và thông báo lỗi sau sẽ được hiển thị:

Lưu ý: Giả sử CONSTANT của bạn giá trị là 71 .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm toán trong MySQL từ SELECT

  2. chọn cập nhật với mysql riêng biệt

  3. lỗi cập nhật bản ghi trong cơ sở dữ liệu

  4. Tôi cần thay đổi định dạng ngày bằng php

  5. Cách tốt nhất để triển khai tìm kiếm chuỗi con trong SQL là gì?