2017年計(jì)算機(jī)等考三級(jí)數(shù)據(jù)庫輔導(dǎo):MySQL數(shù)據(jù)庫中名和表名的大小寫敏感性問題
時(shí)間:2017-01-17 15:12:00 來源:無憂考網(wǎng) [字體:小 中 大]注意:盡管在 Windows 中數(shù)據(jù)庫與表名是忽略大小寫的,你不應(yīng)該在同一個(gè)查詢中使用不同的大小寫來引用一個(gè)給定的數(shù)據(jù)庫和表。下面的查詢將不能工作,因?yàn)樗?my_table 和 MY_TABLE 引用一個(gè)表:
mysql> SELECT * FROM my_table WHERE MY_TABLE.col=1;
列名與列的別名在所有的情況下均是忽略大小寫的。
表的別名是區(qū)分大小寫的。下面的查詢將不能工作,因?yàn)樗?a 和 A 引用別名:
mysql> SELECT col_name FROM tbl_name AS a WHERE a.col_name = 1 OR A.col_name = 2;
如果記憶數(shù)據(jù)庫和表名的字母大小寫有困難,建議采用一個(gè)一致一約定,例如總是以小寫字母創(chuàng)建數(shù)據(jù)庫和表。
避免這個(gè)問題的另一個(gè)辦法就是以 -O lower_case_table_names=1 參數(shù)啟動(dòng) mysqld。缺省地在 Windows 中這個(gè)選項(xiàng)為 1 ,在 Unix 中為 0。
如果 lower_case_table_names 為 1 ,MySQL 將在存儲(chǔ)與查找時(shí)將所有的表名轉(zhuǎn)換為小寫字線。(從 MySQL 4.0.2 開始,這個(gè)選項(xiàng)同樣適用于數(shù)據(jù)庫名。) 注意,當(dāng)你更改這個(gè)選項(xiàng)時(shí),你必須在啟動(dòng) mysqld 前首先將老的表名轉(zhuǎn)換為小寫字母。
$ pwd
/data1/etl/aiinsight/ScheduleServer/mysql/support-files
$ ./mysql.server stop
$ pwd
/data1/etl/aiinsight/ScheduleServer/mysql/bin
./mysqld_safe --lower_case_table_names
方法2:修改my.cnf配置文件
在[mysqld]節(jié)下加入
lower_case_table_names=1
- 2023年下半年計(jì)算機(jī)等級(jí)考試四級(jí)計(jì)算機(jī)組成與接口備考要點(diǎn)歸納
- 2023年下半年計(jì)算機(jī)等級(jí)考試三級(jí)信息安全技術(shù)復(fù)習(xí)要點(diǎn)匯總
- 2023年下半年計(jì)算機(jī)等級(jí)考試三級(jí)數(shù)據(jù)庫技術(shù)復(fù)習(xí)要點(diǎn)匯總
- 2023年下半年計(jì)算機(jī)等級(jí)一級(jí)考試Photoshop考點(diǎn)梳理
- 2023年下半年計(jì)算機(jī)等級(jí)考試三級(jí)網(wǎng)絡(luò)技術(shù)考點(diǎn)梳理
- 2023年下半年計(jì)算機(jī)等級(jí)一級(jí)考試WPS office考點(diǎn)匯總
- 查看計(jì)算機(jī)等級(jí)考試全部文檔 >>
- 2024年9月上海計(jì)算機(jī)一級(jí)成績查詢時(shí)間及查分入口
- 2024年9月全國計(jì)算機(jī)一級(jí)成績查詢時(shí)間及查分入口
- 2024年9月全國計(jì)算機(jī)一級(jí)考試成績查詢?nèi)肟冢ㄒ验_
- 2024年9月浙江省全國計(jì)算機(jī)等級(jí)考試(NCRE)
- 2024年9月浙江計(jì)算機(jī)二級(jí)考試準(zhǔn)考證打印入口(9
- 2024年9月江蘇計(jì)算機(jī)一級(jí)成績查詢時(shí)間及查分入口
- 2024年9月江蘇計(jì)算機(jī)等級(jí)考試成績查詢時(shí)間及查分
- 2024年9月浙江計(jì)算機(jī)二級(jí)成績查詢時(shí)間及查分入口