国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL中SQL模式的特點總結

2024-07-24 12:54:10
字體:
來源:轉載
供稿:網友

前言

SQL模式影響MySQL支持的SQL語法和執行的數據驗證檢查。

MySQL服務器可以在不同的SQL模式下運行,并且可以針對不同的客戶端以不同的方式應用這些模式,具體取決于sql_mode系統變量的值。DBA可以設置全局SQL模式以匹配站點服務器操作要求,并且每個應用程序可以將其會話SQL模式設置為其自己的要求。

模式會影響MySQL支持的SQL語法以及它執行的數據驗證檢查。這使得在不同環境中使用MySQL以及將MySQL與其他數據庫服務器一起使用變得更加容易。

下面話不多說了,來一起看看詳細的介紹吧

設置SQL模式

要在運行時更改SQL模式,請sql_mode使用以下SET 語句設置全局或會話 系統變量

SET GLOBAL sql_mode = 'modes';SET SESSION sql_mode = 'modes';

模式列表

模式 注釋
ALLOW_INVALID_DATES 無效日期會生成錯誤
ERROR_FOR_DIVISION_BY_ZERO 除0錯誤
NO_BACKSLASH_ESCAPES 禁止使用反斜杠字符(/)作為字符串中的轉義字符。啟用此模式后,反斜杠就像其他任何一個普通字符一樣。
NO_UNSIGNED_SUBTRACTION 在整數值之間減去(其中一個是類型) UNSIGNED,默認情況下會產生無符號結果。如果結果否則為負,則會導致錯誤
NO_ZERO_IN_DATE '0000-00-00' 則允許并且插入產生警告
ONLY_FULL_GROUP_BY select 內指定字段必須出現在 groupby 中,否則錯誤
STRICT_TRANS_TABLES 為事務存儲引擎啟用嚴格的SQL模式,并在可能的情況下為非事務性存儲引擎啟用。
STRICT_ALL_TABLES 為所有存儲引擎啟用嚴格SQL模式。無效的數據值被拒絕。

詳情請參考 https://dev.mysql.com/doc/ref...

嚴格SQL模式

MySQL服務器可以在不同的SQL模式下運行,并且可以針對不同的客戶端以不同的方式應用這些模式,具體取決于sql_mode系統變量的值。在嚴格SQL模式下,服務器會將某些警告升級為錯誤。

嚴格SQL模式適用于以下語句

ALTER TABLE CREATE TABLE CREATE TABLE ... SELECT DELETE INSERT LOAD DATA LOAD XML SELECT SLEEP() UPDATE

在存儲的程序中,如果在嚴格模式生效時定義了程序,則列出的類型的單個語句將以嚴格的SQL模式執行。

嚴格的SQL模式適用于以下錯誤,表示輸入值無效或缺失的一類錯誤。如果值具有錯誤的列數據類型或可能超出范圍,則該值無效。如果要插入的新行不包含其定義中NOT NULL沒有顯式DEFAULT子句的列的值,則缺少值。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 盐池县| 汉源县| 海原县| 左贡县| 沙洋县| 墨玉县| 枣强县| 和顺县| 布尔津县| 苍山县| 正阳县| 镇雄县| 淮阳县| 获嘉县| 景德镇市| 南皮县| 望城县| 康保县| 隆安县| 正定县| 新安县| 布拖县| 齐河县| 瑞丽市| 利川市| 公安县| 云浮市| 新建县| 辽宁省| 华阴市| 咸宁市| 峨山| 扬州市| 曲沃县| 阳新县| 张家界市| 泰安市| 札达县| 民乐县| 德令哈市| 阜新|