当前位置: 首页 > 后端技术 > PHP

MySQLSQL模式特性总结

时间:2023-03-29 18:25:43 PHP

鍓嶈█MySQL鏈嶅姟鍣ㄥ彲浠ヨ繍琛屽湪涓嶅悓鐨凷QL妯″紡涓嬶紝骞朵笖鍙互鏍规嵁sql_mode绯荤粺鍙橀噺鐨勫€硷紝浠ヤ笉鍚岀殑鏂瑰紡涓轰笉鍚岀殑瀹㈡埛绔簲鐢ㄨ繖浜涙ā寮忋€侱BA鍙互璁剧疆鍏ㄥ眬SQL妯″紡浠ュ尮閰嶇珯鐐规湇鍔″櫒鎿嶄綔瑕佹眰锛屾瘡涓簲鐢ㄧ▼搴忓彲浠ュ皢鍏朵細璇漇QL妯″紡璁剧疆涓鸿嚜宸辩殑瑕佹眰銆傛ā寮忎細褰卞搷MySQL鏀寔鐨凷QL璇硶鍙婂叾鎵ц鐨勬暟鎹獙璇佹鏌ャ€傝繖浣垮緱鍦ㄤ笉鍚岀幆澧冧腑浣跨敤MySQL浠ュ強灏哅ySQL涓庡叾浠栨暟鎹簱鏈嶅姟鍣ㄤ竴璧蜂娇鐢ㄥ彉寰楁洿鍔犲鏄撱€傝鍦ㄨ繍琛屾椂鏇存敼SQL妯″紡锛岃浣跨敤浠ヤ笅SET璇彞璁剧疆鍏ㄥ眬鎴栦細璇濈郴缁熷彉閲弒ql_modeSETGLOBALsql_mode='modes';SETSESSIONsql_mode='modes';MODELISTMODESCOMMENTALLOW_INVALID_DATES鏃犳晥鏃ユ湡鐢熸垚閿欒ERROR_FOR_DIVISION_BY_ZERO闄や互闆堕敊璇疦O_BACKSLASH_ESCAPES绂佹浣跨敤鍙嶆枩鏉犲瓧绗?\)浣滀负瀛楃涓蹭腑鐨勮浆涔夊瓧绗︺€傚惎鐢ㄦ妯″紡鍚庯紝鍙嶆枩鏉犲氨鍍忎换浣曞叾浠栨櫘閫氬瓧绗︿竴鏍枫€侼O_UNSIGNED_SUBTRACTION鍦ㄦ暣鏁板€间箣闂寸浉鍑忥紙鍏朵腑涓€涓槸UNSIGNED绫诲瀷锛夛紝榛樿浜х敓鏃犵鍙风粨鏋溿€傚鏋滅粨鏋滀负璐燂紝鍒欎細瀵艰嚧閿欒NO_ZERO_IN_DATE'0000-00-00'鐒跺悗瀹冭鍏佽骞朵笖鎻掑叆浜х敓璀﹀憡ONLY_FULL_GROUP_BYselectwithinspecifiedfieldsmustappearingroupby锛屽惁鍒欓敊璇疭TRICT_TRANS_TABLESenablesstrictSQLmodeforthetransactional瀛樺偍寮曟搸锛屽苟鍦ㄥ彲鑳界殑鎯呭喌涓嬩负闈炰簨鍔℃€у瓨鍌ㄥ紩鎿庡惎鐢ㄣ€係TRICT_ALL_TABLES涓烘墍鏈夊瓨鍌ㄥ紩鎿庡惎鐢ㄤ弗鏍肩殑SQL妯″紡銆傛棤鏁堢殑鏁版嵁鍊艰鎷掔粷銆傝鎯呰鍙傝€僪ttps://dev.mysql.com/doc/ref...StrictSQLModeMySQLServer鍙互杩愯鍦ㄤ笉鍚岀殑SQL妯″紡涓嬶紝骞朵笖鍙互閽堝涓嶅悓鐨勫鎴风浠ヤ笉鍚岀殑鏂瑰紡搴旂敤杩欎簺妯″紡锛岃繖鍙栧喅浜庡熀浜巗ql_mode绯荤粺鍙橀噺鐨勫€笺€傚湪涓ユ牸SQL妯″紡涓嬶紝鏈嶅姟鍣ㄥ皢鏌愪簺璀﹀憡鍗囩骇涓洪敊璇€備弗鏍糞QL妯″紡閫傜敤浜庝互涓嬭鍙LTERTABLECREATETABLECREATETABLE...SELECTDELETEINSERTLOADDATALOADXMLSELECTSLEEP()UPDATE涓ユ牸鐨凷QL妯″紡鎵ц銆備弗鏍糞QL妯″紡閫傜敤浜庝互涓嬮敊璇紝杩欐槸涓€绫绘寚绀鸿緭鍏ュ€兼棤鏁堟垨缂哄け鐨勯敊璇€傚鏋滃垪鏁版嵁绫诲瀷閿欒鎴栧彲鑳借秴鍑鸿寖鍥达紝鍒欏€兼棤鏁堛€傚鏋滆鎻掑叆鐨勬柊琛屼笉鍖呭惈鍦ㄦ病鏈夋樉寮廌EFAULT瀛愬彞鐨勬儏鍐典笅瀹氫箟涓篘OTNULL鐨勫垪鐨勫€硷紝鍒欑己灏戝€笺€侲R_BAD_NULL_ERRORER_CUT_VALUE_GROUP_CONCATER_DATA_TOO_LONGER_DATETIME_FUNCTION_OVERFLOWER_DIVISION_BY_ZEROER_INVALID_ARGUMENT_FOR_LOGARITHMER_NO_DEFAULT_FOR_FIELDER_NO_DEFAULT_FOR_VIEW_FIELDER_TOO_LONG_KEYER_TRUNCATED_WRONG_VALUEER_TRUNCATED_WRONG_VALUE_FOR_FIELDER_WARN_DATA_OUT_OF_RANGEER_WARN_NULL_TO_NOTNULLER_WARN_TOO_FEW_RECORDSER_WRONG_ARGUMENTSER_WRONG_VALUE_FOR_TYPEWARN_DATA_TRUNCATED鑷磋阿鎰熻阿浣犵湅鍒拌繖閲岋紝甯屾湜鏈瘒鏂囩珷鍙互甯埌浣狅紝璋㈣阿銆傪煓?/p>