【mysql】大小写规范
生活随笔
收集整理的這篇文章主要介紹了
【mysql】大小写规范
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
SQL 大小寫規范
1. Windows和Linux平臺區別
- 在SQL中,關鍵字和函數名是不用區分字母大小寫的,比如SELECT、WHERE、 ORDER、 GROUP BY等關鍵字,以及ABS、MOD、 ROUND、 MAX 等函數名。
- 不過在SQL中,還是要確定大小寫的規范,因為在Linux和Windows環境下,可能會遇到不同的大小寫問題。Windows系統默認大小寫不敏感,但是Linux系統是大小寫敏感的。
- 通過如下命令查看:
- Windows系統下 :
- Linux系統下:
- lower_case_table_names參數值的設置:
- 默認為0,大小寫敏感。
- 值為1,大小寫不敏感。創建的表,數據庫都是以小寫形式存放在磁盤上,對于sql語句都是轉換為小寫對表和數據庫進行查找。
- 值為2,創建的表和數據庫依據語句上格式存放,凡是查找都是轉換為小寫進行。
- 兩個平臺上SQL大小寫的區別具體來說:
MySQL在Linux下數據庫名、表名、列名、別名大小寫規則是這樣的:
1、數據庫名、表名、表的別名、變量名是嚴格區分大小寫的;
2、關鍵字、函數名稱在SQL中不區分大小寫;
3、列名(或字段名)與列的別名(或字段別名)在所有的情況下均是忽略大小寫的;
MySQL在Windows的環境下全部不區分大小寫
2. Linux下大小寫規則設置
- 設置為大小寫不敏感時,要在my.cnf這個配置文件[mysqld]中加入lower_case_table_names=1,然后
重啟服務器。 - 但是要在重啟數據庫實例之前就需要將原來的數據庫和表轉換為小寫,否則將找不到數據庫名。
- 此參數適用于MySQL5.7。在MySQL 8下禁止在重新啟動MySQL服務時將lower_case_table_names 設置成不同于初始化MySQL服務時設置的lower_case_table_names 值。如果非要將MySQL8設置為大小寫不敏感,具體步驟為:
1、停止MySQL服務
2、刪除數據目錄,即刪除/var/lib/mysql 目錄
3、在MySQL配置文件( /etc/my.cnf )中添加 lower_case_table_names=1
4、啟動MySQL服務
- 注意:在進行數據庫參數設置之前,需要掌握這個參數帶來的影響,切不可盲目設置。
3. SQL編寫建議
- 如果你的變量名命名規范沒有統一,就可能產生錯誤。這里有一個有關命名規范的建議:
- 數據庫名、表名和字段名在Linux MySQL環境下是區分大小寫的,因此建議你統一這些字段的命名規則,比如全部采用小寫的方式。
- 雖然關鍵字和函數名稱在SQL中不區分大小寫,也就是如果小寫的話同樣可以執行。但是同時將關鍵詞和函數名稱全部大寫,以便于區分數據庫名、表名、字段名。
總結
以上是生活随笔為你收集整理的【mysql】大小写规范的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: winhex常用快捷键
- 下一篇: 只喝烧开的自来水,不碰桶装水,不买矿泉水