Sie könnten einen Trigger hinzufügen, um eine Ausnahme auszulösen, wenn die Werte außerhalb des Bereichs liegen, z. B.
DELIMITER $$
CREATE TRIGGER `insert_table_var` BEFORE INSERT ON `table`
FOR EACH ROW
BEGIN
DECLARE str_len INT DEFAULT 0;
DECLARE max_len INT DEFAULT 10;
DECLARE min_len INT DEFAULT 6;
SET str_len = LENGTH(NEW.col);
IF str_len > max_len OR str_len < min_len
THEN
CALL col_length_outside_range_error();
END IF;
END $$
DELIMITER ;;
Während SIGNAL nicht verfügbar ist, würde der Aufruf einer undefinierten gespeicherten Prozedur ausreichen (in diesem Fall col_length_outside_range_error
). Andernfalls denke ich, dass die Anwendung, die die Datenbank verwendet, die Prüfungen durchführen muss.