本文更新於2019-06-29,使用MySQL 5.7,操作系統為Deepin 15.4。 與其他資料庫不同,MySQL可以運行在不同的SQL Mode(SQL模式)下。 可通過變數@@sql_mode查看或設置當前的SQL Mode。 下麵是一些常用的SQL Mode: ANSI:使語法和行為更符 ...
本文更新於2019-06-29,使用MySQL 5.7,操作系統為Deepin 15.4。
與其他資料庫不同,MySQL可以運行在不同的SQL Mode(SQL模式)下。
可通過變數@@sql_mode
查看或設置當前的SQL Mode。
下麵是一些常用的SQL Mode:
ANSI
:使語法和行為更符合標準SQL。為非嚴格模式,等同於REAL_AS_FLOAT
、PIPES_AS_CONCAT
、ANSI_QUOTES
、IGNORE_SPACE
的組合。NO_BACKSLASH_ESCAPES
:使反斜杠成為普通字元。NO_TABLE_OPTION
:去掉SHOW CREATE TABLE
中的ENGINE
相關的內容。PIPES_AS_CONCAT
:將'||'視為字元串連接符,就像在Oracle中一樣。STRICT_TRANS_TABLES
:嚴格模式。當插入非法日期、欄位長度超長等不正確的值時,給出錯誤而不是警告。TADITIONAL
:等同於STRICT_TRANS_TABLES
、STRICT_ALL_TABLES
、NO_ZERO_IN_DATE
、NO_ZERO_DATE
、ERROR_FOR_DIVISION_BY_ZERO
、TRADITIONAL
、NO_AUTO_CREATE_USER
的組合。
MySQL還提供若幹資料庫組合模式,以便在其他異構資料庫之間遷移數據:DB2
、MAXDB
、MSSQL
、ORACLE
、POSTGRESQL
。