Sql Mode及相關問題

pathfinder_cui發表於2015-09-23
啟用NO_BACKSLASH_ESCAPES模式,使反斜線成為普通字元。
啟用PIPES_AS_CONCAT模式,將"||視位字串連線符;
啟用NO_TABLE_OPTIONS模式,去掉engine關鍵字;

常用的sql_mode
ANSI  等同於REAL_AS_FLOAT、PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE和ANSI組合模式,這種模式使語法和行為更符合標準的SQL
STRICT_TRANS_TABLES  適用於事務表和非事務表,它是嚴格模式,不允許非法日期,也不允許超過欄位長度的值插入欄位中,對於插入正確的值給出錯誤而不是警告
TRANDITIONAL 模式等同於STRICT_TRANS_TABLES、STRICT_ALL_TABLES、NO_ZERO_IN_DATE、NO_ZERO_DATE、ERROR_FOR_DIVISION_BY_ZERO、TRADITIONAL和NO_AUTO_CREATE_USER組合模式,
             所以它也是嚴格模式,對於插入不正確的值會給出錯誤而不是警告,可以應用在事務表和非事務表,只要出現錯誤就會立即回滾。


sql_mode在遷移中如何使用
向DB2匯入        PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、NO_FIFLD_OPTIONS
向MAXDB匯入      PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、NO_FIFLD_OPTIONS、NO_AUTO_CREATE_USER
向MSSQL匯入      PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、NO_FIFLD_OPTIONS
向ORACLE匯入     PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、NO_FIFLD_OPTIONS、NO_AUTO_CREATE_USER
向POSTgresql匯入 PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、NO_FIFLD_OPTIONS


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29620572/viewspace-1806934/,如需轉載,請註明出處,否則將追究法律責任。

相關文章