MySQL中SQL Mode的查看與設置
成都創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站設計、網(wǎng)站制作、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務旌德,10年網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18980820575
MySQL可以運行在不同的模式下,而且可以在不同的場景下運行不同的模式,這主要取決于系統(tǒng)變量 sql_mode 的值。本文主要介紹一下這個值的查看與設置,主要在Mac系統(tǒng)下。
對于每個模式的意義和作用,網(wǎng)上很容易找到,本文不做介紹。
按作用區(qū)域和時間可分為3個級別,分別是會話級別,全局級別,配置(永久生效)級別。
會話級別:
查看-
select @@session.sql_mode;
修改-
set @@session.sql_mode='xx_mode' set session sql_mode='xx_mode'
session均可省略,默認session,僅對當前會話有效
全局級別:
查看-
select @@global.sql_mode;
修改-
set global sql_mode='xx_mode'; set @@global.sql_mode='xx_mode';
需高級權(quán)限,僅對下次連接生效,不影響當前會話(親測過),且MySQL重啟后失效,因為MySQL重啟時會重新讀取配置文件里對應值,如果需永久生效需要修改配置文件里的值。
配置修改(永久生效):
打開 vi /etc/my.cnf
在下面添加
[mysqld] sql-mode = "xx_mode"
注意:[mysqld]必須加,且sql-mode中間是“-”,而不是下劃線。
保存退出,重啟服務器,即可永久生效。
因為Mac下安裝MySQL沒有配置文件,所以需要自己手動添加。
ps
最后額外加一點東西,就是Mac下MySQL的啟動、停止、重啟等操作。
主要有兩種方式,
一是點擊”系統(tǒng)偏好設置“對應的MySQL面板,可實現(xiàn)管理。
二是命令行方式。
MySQL相關(guān)的執(zhí)行腳本,常用的主要是下面兩個:
/usr/local/mysql/support-files/mysql.server /usr/local/mysql/bin/mysql
mysql.server是控制服務器的啟停等操作。
mysql.server start|stop|restart|status
mysql主要用于連接服務器。
mysql -uroot -p **** -h **** -D **
有些需要sudo權(quán)限,且可將相關(guān)路徑添加到環(huán)境變量,可簡化書寫,至于如何添加是不做介紹了。
知識點擴展:
Strict Mode闡述
根據(jù) mysql5.0以上版本 strict mode (STRICT_TRANS_TABLES) 的限制:
1).不支持對not null字段插入null值
2).不支持對自增長字段插入''值,可插入null值
3).不支持 text 字段有默認值
看下面代碼:(第一個字段為自增字段)
$query="insert into demo values('','$firstname','$lastname','$sex')";
上邊代碼只在非strict模式有效。
Code代碼
$query="insert into demo values(NULL,'$firstname','$lastname','$sex')";
上邊代碼只在strict模式有效。把空值''換成了NULL.
網(wǎng)站標題:MySQL中SQLMode的查看與設置詳解
文章路徑:http://chinadenli.net/article48/gicchp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計公司、網(wǎng)站排名、網(wǎng)頁設計公司、用戶體驗、企業(yè)網(wǎng)站制作、微信公眾號
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容