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

首頁 > 數據庫 > MySQL > 正文

Mysql SQL服務器模式介紹

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

mysql SQL服務器模式

MySQL服務器可以以不同的SQL模式來操作,并且可以為不同客戶端應用不同模式。這樣每個應用程序可以根據自己的需求來定制服務器的操作模式。

模式定義MySQL應支持哪些SQL語法,以及應執行哪種數據驗證檢查。這樣可以更容易地在不同的環境中使用MySQL,并結合其它數據庫服務器使用MySQL。

你可以用--sql-mode="modes"選項啟動mysqld來設置默認SQL模式。如果你想要重設,該值還可以為空(--sql-mode ="")。

你還可以在啟動后用SET [SESSION|GLOBAL] sql_mode='modes'語句設置sql_mode變量來更改SQL模式。設置GLOBAL變量時需要擁有SUPER權限,并且會影響從那時起連接的所有客戶端的操作。設置SESSION變量只影響當前的客戶端。任何客戶端可以隨時更改自己的會話 sql_mode值。

Modesis是用逗號(‘,')間隔開的一系列不同的模式。你可以用SELECT @@sql_mode語句查詢當前的模式。默認值是空(沒有設置任何模式)。

主要重要sql_mode值

·ANSI

更改語法和行為,使其更符合標準SQL。

·STRICT_TRANS_TABLES

如果不能將給定的值插入到事務表中,則放棄該語句。對于非事務表,如果值出現在單行語句或多行語句的第1行,則放棄該語句。本節后面給出了更詳細的描述。

·TRADITIONAL

Make MySQL的行為象“傳統”SQL數據庫系統。該模式的簡單描述是當在列中插入不正確的值時“給出錯誤而不是警告”。注釋:一旦發現錯誤立即放棄INSERT/UPDATE。如果你使用非事務存儲引擎,這種方式不是你想要的,因為出現錯誤前進行的數據更改不會“滾動”,結果是更新“只進行了一部分”。

本手冊指“嚴格模式”,表示至少STRICT _TRANS_TABLES或STRICT _ALL_TABLES被啟用的模式。

下面描述了支持的所有模式:

·ALLOW_INVALID_DATES

在嚴格模式下不要檢查全部日期。只檢查1到12之間的月份和1到31之間的日。這在Web應用程序中,當你從三個不同的字段獲取年、月、日,并且想要確切保存用戶插入的內容(不進行日期驗證)時很重要。該模式適用于DATE和DATETIME列。不適合TIMESTAMP列,TIMESTAMP列需要驗證日期。

啟用嚴格模式后,服務器需要合法的月和日,不僅僅是分別在1到12和1到31范圍內。例如,禁用嚴格模式時'2004-04-31'是合法的,但啟用嚴格模式后是非法的。要想在嚴格模式允許遮掩固定日期,還應啟用ALLOW_INVALID_DATES。

·ANSI_QUOTES

將‘"'視為識別符引號(‘`'引號字符),不要視為字符串的引號字符。在ANSI模式,你可以仍然使用‘`'來引用識別符。啟用ANSI_QUOTES后,你不能用雙引號來引用字符串,因為它被解釋為識別符。

·ERROR_FOR_DIVISION_BY_ZERO

在嚴格模式,在INSERT或UPDATE過程中,如果被零除(或MOD(X,0)),則產生錯誤(否則為警告)。如果未給出該模式,被零除時MySQL返回NULL。如果用到INSERT IGNORE或UPDATE IGNORE中,MySQL生成被零除警告,但操作結果為NULL。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吉隆县| 临夏县| 建阳市| 浏阳市| 木里| 封丘县| 孟村| 新邵县| 淳安县| 布尔津县| 五大连池市| 化德县| 登封市| 沙坪坝区| 海林市| 双城市| 沙洋县| 宜兰市| 富源县| 株洲市| 丰镇市| 津市市| 买车| 黄梅县| 体育| 大邑县| 石河子市| 靖西县| 祥云县| 翼城县| 平武县| 商南县| 武安市| 烟台市| 九龙县| 富民县| 师宗县| 苍山县| 武清区| 商丘市| 铜梁县|