Normaal gesproken zou u dat doen met de beperking CHECK:
foo_test VARCHAR(50) NOT NULL CHECK (foo_test <> '')
Vóór versie 8.0 had MySQL beperkte ondersteuning voor beperkingen. Van MySQL-referentiehandleiding :
De CHECK-component wordt geparseerd maar genegeerd door alle storage-engines.
Als je je aan een oude versie moet houden, gebruik dan triggers als een tijdelijke oplossing, zoals mensen hebben opgemerkt.
In de toekomst wil je misschien een kijkje nemen op PostgreSQL , waarvan wordt aangenomen dat het betere ondersteuning biedt voor gegevensintegriteit (onder andere dingen ) door veel mensen .