Трябва да използвате NOT NULL
клауза в дефиницията на колоната. Например -
CREATE TABLE book (
author_name varchar(50) NOT NULL,
price decimal(19, 2) DEFAULT NULL,
title varchar(255) DEFAULT NULL
);
Това работи като ограничение.
Заобиколно решение на ограничението празно стойности -
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
Документация - SIGNAL изявление.