drop table if exists t1; set @org_mode=@@sql_mode; create table t1 ( `a` tinyint(4) NOT NULL auto_increment, primary key (`a`) ) engine = 'InnoDB' ; set @@sql_mode='strict_all_tables'; Warnings: Warning 3135 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release. Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. insert into t1 values(1000); ERROR 22003: Out of range value for column 'a' at row 1 select count(*) from t1; count(*) 0 set auto_increment_increment=1000; set auto_increment_offset=700; insert into t1 values(null); ERROR 22003: Out of range value for column 'a' at row 1 select count(*) from t1; count(*) 0 set @@sql_mode=@org_mode; Warnings: Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. insert ignore into t1 values(null); Warnings: Warning 1264 Out of range value for column 'a' at row 1 select * from t1; a 127 drop table t1;