SET SQL_MODE="TRADITIONAL,ANSI"; --disable_warnings DROP TABLE IF EXISTS t5; --enable_warnings CREATE TABLE t5(c1 DECIMAL(5,4) UNSIGNED NOT NULL); --error 1048 INSERT INTO t5 (c1) VALUES(NULL); INSERT INTO t5 (c1) VALUES(0); --error 1264 INSERT INTO t5 (c1) VALUES(-1); --error 1366 INSERT INTO t5 (c1) VALUES('x'); --error 1264 INSERT INTO t5 (c1) VALUES(999999); SELECT COUNT(c1) AS total_rows FROM t5; SELECT COUNT(c1) AS null_rows FROM t5 WHERE c1 IS NULL; SELECT COUNT(c1) AS not_null_rows FROM t5 WHERE c1 IS NOT NULL; DROP TABLE t5; CREATE TABLE t5(c1 DEC(5,4) UNSIGNED NOT NULL); --error 1048 INSERT INTO t5 (c1) VALUES(NULL); INSERT INTO t5 (c1) VALUES(0); --error 1264 INSERT INTO t5 (c1) VALUES(-1); --error 1366 INSERT INTO t5 (c1) VALUES('x'); --error 1264 INSERT INTO t5 (c1) VALUES(999999); SELECT COUNT(c1) AS total_rows FROM t5; SELECT COUNT(c1) AS null_rows FROM t5 WHERE c1 IS NULL; SELECT COUNT(c1) AS not_null_rows FROM t5 WHERE c1 IS NOT NULL; DROP TABLE t5; CREATE TABLE t5(c1 FIXED(5,4) UNSIGNED NOT NULL); --error 1048 INSERT INTO t5 (c1) VALUES(NULL); INSERT INTO t5 (c1) VALUES(0); --error 1264 INSERT INTO t5 (c1) VALUES(-1); --error 1366 INSERT INTO t5 (c1) VALUES('x'); --error 1264 INSERT INTO t5 (c1) VALUES(999999); SELECT COUNT(c1) AS total_rows FROM t5; SELECT COUNT(c1) AS null_rows FROM t5 WHERE c1 IS NULL; SELECT COUNT(c1) AS not_null_rows FROM t5 WHERE c1 IS NOT NULL; DROP TABLE t5; CREATE TABLE t5(c1 NUMERIC(5,4) UNSIGNED NOT NULL); --error 1048 INSERT INTO t5 (c1) VALUES(NULL); INSERT INTO t5 (c1) VALUES(0); --error 1264 INSERT INTO t5 (c1) VALUES(-1); --error 1366 INSERT INTO t5 (c1) VALUES('x'); --error 1264 INSERT INTO t5 (c1) VALUES(999999); SELECT COUNT(c1) AS total_rows FROM t5; SELECT COUNT(c1) AS null_rows FROM t5 WHERE c1 IS NULL; SELECT COUNT(c1) AS not_null_rows FROM t5 WHERE c1 IS NOT NULL; DROP TABLE t5;