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

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

庫名表名大小寫問題與sqlserver兼容的啟動(dòng)配置方法

2020-01-19 00:12:17
字體:
供稿:網(wǎng)友
將全局變量 lower_case_table_names 設(shè)置為1

實(shí)驗(yàn):
1.lower_case_tables_name=0的情況(Linux默認(rèn))
直接啟動(dòng)mysql,在mytest庫中新建表MyTable和mytable
mysql> use mytest;
mysql> create table MyTable(id int not null,name varchar(10),dt date);
mysql> create table mytable(id int not null,name varchar(10),dt date);
mysql> show tables;
+------------------+
| Tables_in_mytest |
+------------------+
| MyTable |
| mytable |
+------------------+
默認(rèn)情況下,可以同時(shí)創(chuàng)建mytable和MyTable兩個(gè)表

2.lower_case_tables_name=1的情況(我們需要設(shè)置成這種情況)
進(jìn)入到etc目錄,編輯my.cnf文件
[root@MYSQLServer etc]# vi my.cnf
找到 [mysqld]
在它的全局變量的最后面加入一行:lower_case_table_names = 1
保存,退出,然后重新啟動(dòng)mysql
[root@MYSQLServer etc]# service mysqld restart;
進(jìn)入到mysql
[root@MYSQLServer mysql]# bin/mysql
mysql> use mytest;
mysql> select * from MyTable;
mysql> select * from mytable;
兩個(gè)查詢的結(jié)果一樣,都是查詢mytable表,而MyTable表已經(jīng)找不到了(可以看到,但查詢不到)
我們?cè)僭囍鴦?chuàng)建MyTable表
mysql> create table MyTable(id int not null,name varchar(10),dt date);
ERROR 1050 (42S01): Table 'mytable' already exists
將得到表已經(jīng)存在的提示

同樣,我們可以試著創(chuàng)建MyTest庫
mysql> create database MyTest;
ERROR 1007 (HY000): Can't create database 'mytest'; database exists
也會(huì)得到庫已經(jīng)存在的提示

在這種情況下,表名和庫名都不區(qū)分大小寫了。

注意:在Unix中將lower_case_tables_name設(shè)置為1之前,重啟mysqld之前, 必須先將舊的數(shù)據(jù)庫名和表名轉(zhuǎn)換為小寫,否則設(shè)置后,將找不到以前的表。
(上面的實(shí)驗(yàn)中,MyTable表在lower_case_tables_name=1時(shí)已經(jīng)找不到了)
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 河曲县| 武川县| 三台县| 微山县| 诸城市| 扎赉特旗| 七台河市| 巴东县| 昌江| 贵溪市| 华阴市| 汽车| 宜兴市| 沙坪坝区| 舞阳县| 北辰区| 涿州市| 凤城市| 阿城市| 东城区| 容城县| 泰来县| 乐山市| 南昌县| 武宁县| 田阳县| 通辽市| 鸡东县| 高平市| 青河县| 乌鲁木齐县| 兴文县| 平安县| 隆林| 哈尔滨市| 关岭| 崇文区| 乡宁县| 临武县| 阜康市| 莲花县|