Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Ograniczenie zapobiegające wstawianiu pustego ciągu w MySQL

Normalnie zrobiłbyś to z ograniczeniem CHECK:

foo_test VARCHAR(50) NOT NULL CHECK (foo_test <> '')

Przed wersją 8.0 MySQL miał ograniczoną obsługę ograniczeń. Z Podręcznika MySQL :

Klauzula CHECK jest analizowana, ale ignorowana przez wszystkie silniki pamięci masowej.

Jeśli musisz trzymać się starej wersji, użyj wyzwalaczy jako obejście, jak zauważyli ludzie.

W przyszłości możesz przyjrzeć się PostgreSQL , który jest uważany za lepiej obsługujący integralność danych (wśród inne rzeczy ) wiele osób .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak dodać indeksy do tabel MySQL?

  2. Grupuj według SQL z zamówieniem według

  3. Jak obliczyć średnią sprzedaż tygodniową w MySQL?

  4. MySQL/MariaDB - uporządkuj według podzapytania wewnątrz

  5. Czy muszę chronić się przed wstrzyknięciem SQL, jeśli korzystam z listy rozwijanej?