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

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL數(shù)據(jù)庫的大小寫問題

2024-07-24 11:58:18
字體:
供稿:網(wǎng)友

在 MySQL 中,數(shù)據(jù)庫和表對就于那些目錄下的目錄和文件。因而,操作系統(tǒng)的敏感性決定數(shù)據(jù)庫和表命名的大小寫敏感。這就意味著數(shù)據(jù)庫和表名在 Windows 中是大小寫不敏感的,而在大多數(shù)類型的 Unix 系統(tǒng)中是大小寫敏感的。

奇怪的是列名與列的別名在所有的情況下均是忽略大小寫的,而表的別名又是區(qū)分大小寫的。

要避免這個(gè)問題,你最好在定義數(shù)據(jù)庫命名規(guī)則的時(shí)候就全部采用小寫字母加下劃線的組合,而不使用任何的大寫字母。

或者也可以強(qiáng)制以 -O lower_case_table_names=1 參數(shù)啟動(dòng) mysqld(如果使用 --defaults-file=.../my.cnf 參數(shù)來讀取指定的配置文件啟動(dòng) mysqld 的話,你需要在配置文件的 [mysqld] 區(qū)段下增加一行 lower_case_table_names=1)。這樣MySQL 將在創(chuàng)建與查找時(shí)將所有的表名自動(dòng)轉(zhuǎn)換為小寫字符(這個(gè)選項(xiàng)缺省地在 Windows 中為 1 ,在 Unix 中為 0。從 MySQL 4.0.2 開始,這個(gè)選項(xiàng)同樣適用于數(shù)據(jù)庫名)。

當(dāng)你更改這個(gè)選項(xiàng)時(shí),你必須在啟動(dòng) mysqld 前首先將老的表名轉(zhuǎn)換為小寫字母。

換句話說,如果你希望在數(shù)據(jù)庫里面創(chuàng)建表的時(shí)候保留大小寫字符狀態(tài),則應(yīng)該把這個(gè)參數(shù)置0: lower_case_table_names=1 。否則的話你會(huì)發(fā)現(xiàn)同樣的sqldump腳本在不同的操作系統(tǒng)下最終導(dǎo)入的結(jié)果不一樣(在Windows下所有的大寫字符都變成小寫了)。

修改/etc/my.cnf

[mysqld]
        lower_case_table_names = 1

其中 0:區(qū)分大小寫,1:不區(qū)分大小寫

MySQL在Linux下數(shù)據(jù)庫名、表名、列名、別名大小寫規(guī)則是這樣的:

1、數(shù)據(jù)庫名與表名是嚴(yán)格區(qū)分大小寫的;

2、表的別名是嚴(yán)格區(qū)分大小寫的;

3、列名與列的別名在所有的情況下均是忽略大小寫的;

4、變量名也是嚴(yán)格區(qū)分大小寫的;

MySQL在Windows下都不區(qū)分大小寫。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 锡林浩特市| 东明县| 鹿泉市| 陆丰市| 河池市| 松原市| 长春市| 平度市| 沧源| 交城县| 安化县| 额济纳旗| 嘉鱼县| 教育| 建平县| 松滋市| 田阳县| 南川市| 雅江县| 达孜县| 虞城县| 宣恩县| 泌阳县| 呼玛县| 宕昌县| 琼结县| 洪湖市| 卢龙县| 临朐县| 凤山市| 东至县| 石屏县| 蓬莱市| 益阳市| 睢宁县| 虞城县| 岗巴县| 常州市| 三门峡市| 浮山县| 云霄县|