Vous devez utiliser NOT NULL
clause dans la définition de la colonne. Par exemple -
CREATE TABLE book (
author_name varchar(50) NOT NULL,
price decimal(19, 2) DEFAULT NULL,
title varchar(255) DEFAULT NULL
);
Cela fonctionne comme une contrainte.
Une solution de contournement pour contraindre vide valeurs -
CREATE TRIGGER trigger1
AFTER INSERT
ON book
FOR EACH ROW
BEGIN
IF author_name = '' THEN
SIGNAL SQLSTATE VALUE '02001'
SET MESSAGE_TEXT = 'Blank value is not allowed'; -- Raise error
END IF;
END
Documentation - SIGNAL déclaration.