Musisz użyć NOT NULL
klauzula w definicji kolumny. Na przykład -
CREATE TABLE book (
author_name varchar(50) NOT NULL,
price decimal(19, 2) DEFAULT NULL,
title varchar(255) DEFAULT NULL
);
Działa to jak ograniczenie.
Obejście ograniczenia puste wartości -
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
Dokumentacja - SIGNAL oświadczenie.