Sql_mode值 描述
ANSI 更改語法和行爲,使其更符合標準SQL。
STRICT_TRANS_TABLES 如果不能將給定的值插入到事務表中, 則放棄該語句。 對於非事務表,如果值出現在單行語句或多行語句的第1行,則放棄該語句。本節後面給出了更詳細的描述。
TRADITIONAL MakeMySQL的行爲象“傳統”SQL數據庫系統。該模式的簡單描述是當在列中插入不正確的值時“給出錯誤而不是警告”。註釋:一旦發現錯誤立即放棄INSERT/UPDATE。如果你使用非事務存儲引擎,這種方式不是你想要的,因爲出現錯誤前進行的數據更改不會“ 滾動” ,結果是更新“ 只進行了一部分”
後面兩種模式爲嚴格模式(如果插入或者更新不正確,MySQL將會放棄操作,並報錯), 一般在應用中建議使用。但是如果在嚴格模式下,使用的存儲引擎不支持事務,那麼會有數據不一致的風險。