
MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:
1、数据库名与表名是严格区分大小写的;
2、表的别名是严格区分大小写的;
3、列名与列的别名在所有的情况下均是忽略大小写的;
4、变量名也是严格区分大小写的;
MySQL在Windows下都不区分大小写。
所以在不同 *** 作系统中为了能使程序和数据库都能正常运行,最好的办法是在设计的时候都转为小写,但是如果在设计的时候已经规范化大小写了,那么在Windows环境下只要对数据库的配置做下改动就行了,具体 *** 作如下:
在MySQL的配置文件中myini [mysqld]
中增加一行
lower_case_table_names = 1
参数解释:
0:区分大小写
1:不区分大小写在 MySQL
中,数据库和表对就于那些目录下的目录和文件。因而, *** 作系统的敏感性决定数据库和表命名的大小写敏感。这就意味着数据库和表名在
Windows 中是大小写不敏感的,而在大多数类型的 Unix
系统中是大小写敏感的。
奇怪的是列名与列的别名在所有的情况下均是忽略大小写的,而表的别名又是区分大小写的。
要避免这个问题,你最好在定义数据库命名规则的时候就全部采用小写字母加下划线的组合,而不使用任何的大写字母。
或者也可以强制以 -O lower_case_table_names=1 参数启动
mysqld(如果使用 --defaults-file=\mycnf
参数来读取指定的配置文件启动 mysqld
的话,你需要在配置文件的 [mysqld] 区段下增加一行
lower_case_table_names=1)。这样MySQL
将在创建与查找时将所有的表名自动转换为小写字符(这个选项缺省地在
Windows 中为 1 ,在 Unix 中为 0。从 MySQL 402
开始,这个选项同样适用于数据库名)。
mysql一个表可以有多个唯一索引。
如果能确定某个数据列将只包含彼此各不相同的值,在为这个数据列创建索引的时候就应该用关键字UNIQUE把它定义为一个唯一索引。
这么做的好处:
一是简化了MySQL对这个索引的管理工作,这个索引也因此而变得更有效率。
二是MySQL会在有新记录插入数据表时,自动检查新记录的这个字段的值是否已经在某个记录的这个字段里出现过了;如果是,MySQL将拒绝插入那条新记录。
也就是说,唯一索引可以保证数据记录的唯一性。事实上,在许多场合,人们创建唯一索引的目的往往不是为了提高访问速度,而只是为了避免数据出现重复。
网页链接
以上就是关于mysql中数据库名字分大小写吗全部的内容,包括:mysql中数据库名字分大小写吗、mysql一个表可以有几个唯一索引、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)