MySQL 5.0 以上版本支持三種sql_mode模式:ANSI、TRADITIONAL和STRICT_TRANS_TABLES。

ANSI

ANSI模式:寬松模式,對插入數據進行校驗,如果不符合定義類型或長度,對數據類型調整或截斷保存,報warning警告。

TRADITIONAL

TRADITIONAL 模式:嚴格模式,當向mysql數據庫插入數據時,進行數據的嚴格校驗,保證錯誤數據不能插入,報error錯誤。用於事物時,會進行事物的回滾。

STRICT_TRANS_TABLES

STRICT_TRANS_TABLES模式:嚴格模式,進行數據的嚴格校驗,錯誤數據不能插入,報error錯誤。

查看

mysql> select @@sql_mode;   
+----------------------------------------------------------------+ | @@sql_mode | +----------------------------------------------------------------+ | STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION | +----------------------------------------------------------------+ 

修改my.cnf

在mysql安裝目錄中找到my.cnf將:

sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

改為:(如果沒有則可直接設置)

sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

#如果不生效,修改 /usr/local/mysql/my.cnf