mysql> use test1; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> set session sql_mode="ANSI"; Query OK, 0 rows affected (0.01 sec) mysql> create table t (d datetime); Query OK, 0 rows affected (0.03 sec) mysql> insert into t values('2007-04-31'); Query OK, 1 row affected, 1 warning (0.01 sec) mysql> select * from t; +---------------------+ | d | +---------------------+ | 0000-00-00 00:00:00 | +---------------------+ 1 row in set (0.00 sec) mysql> set session sql_mode="TRADITIONAL"; Query OK, 0 rows affected (0.00 sec) mysql> insert into t values('2000-12-25'); Query OK, 1 row affected (0.01 sec) mysql> select * from t; +---------------------+ | d | +---------------------+ | 0000-00-00 00:00:00 | | 2000-12-25 00:00:00 | +---------------------+ 2 rows in set (0.00 sec) mysql> select @@sql_mode; +------------------------------------------------------------------------------------------------------------------------------------------------------+ | @@sql_mode | +------------------------------------------------------------------------------------------------------------------------------------------------------+ | STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION | +------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec) mysql>set sql_mode=""; Query OK, 0 rows affected (0.00 sec) mysql> select @@sql_mode; +------------+ | @@sql_mode | +------------+ | | +------------+ 1 row in set (0.00 sec) mysql> set session sql_mode="TRADITIONAL"; Query OK, 0 rows affected (0.00 sec) mysql> insert into t values('2000-12-25'); Query OK, 1 row affected (0.01 sec) mysql> select * from t; +---------------------+ | d | +---------------------+ | 0000-00-00 00:00:00 | | 2000-12-25 00:00:00 | | 2000-12-25 00:00:00 | +---------------------+ 3 rows in set (0.00 sec) mysql> select @@sql_mode; +------------------------------------------------------------------------------------------------------------------------------------------------------+ | @@sql_mode | +------------------------------------------------------------------------------------------------------------------------------------------------------+ | STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION | +------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec) mysql> set @@sql_mode=""; Query OK, 0 rows affected (0.00 sec) mysql> select @@sql_mode; +------------+ | @@sql_mode | +------------+ | | +------------+ 1 row in set (0.00 sec) mysql> set session sql_mode="ANSI"; Query OK, 0 rows affected (0.00 sec) mysql> insert into t values('2000-12-25'); Query OK, 1 row affected (0.01 sec) my