Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Lindungi kolom, larang pembaruan, hanya izinkan penyisipan jika NULL di MySQL

Ya, di MySQL pemicu adalah satu-satunya cara untuk melakukan ini. MySQL tidak mendukung batasan.

Pemicu Anda tidak sepenuhnya tepat. Pertama, Anda memiliki update on date , tapi ini harus update on <table name> . Kedua, Anda memeriksa nilai tanggal yang digunakan untuk pembaruan . Mungkin maksud Anda:

create trigger date_check_update
before update on <the table name goes here>
for each row
begin
    if (old.date IS NOT NULL) then
        SIGNAL 'date already set'
    end if ;
end;

Sebuah insert pemicu pada kondisi ini tidak masuk akal.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak dapat menemukan metode UseMysql di DbContextOptions

  2. Adakah yang bisa membantu menjelaskan mengapa tidak menggunakan SQL JOIN adalah praktik yang buruk dan salah?

  3. Menyimpan catatan database ke dalam array

  4. Cara membaca kueri sql ke pandas dataframe / python / Django

  5. Kasus MySQL/Jika/Lalu