MySQL中SQL语句的⼤⼩写规则
external怎么记忆replacetoner是什么意思SQL 语句的⼤⼩写规则与语句组成元素、引⽤内容和服务器所使⽤的操作系统有关。
1) SQL 关键字和函数名
SQL 的关键字和函数名不区分⼤⼩写。例如,下⾯这些语句都是等价的:
SELECT NOW();
select now();
sElEcT nOw();
2) 数据库名、表名和视图名 MySQL ⽤服务器主机的底层⽂件系统所包含的⽬录和⽂件来表⽰数据库和表。因此,数据库名和表名的默认⼤⼩写取决于服务器主机的操作系统在命名⽅⾯的规定。
⽐如 Windows 系统的⽂件名不区分⼤⼩写,所以运⾏在 Windows 系统上⾯的 MySQL 服务器也不⽤区分数据库名和表名的⼤⼩写。Linux 系统的⽂件名区分⼤⼩写,所以运⾏在 Linux 系统上的 MySQL 服务器需要区分数据库名和表名的⼤⼩写。对于 Mac OS X 平台,其⽂件系统中的名字是个例外,它们不区分⼤⼩写。
MySQL 会使⽤⼀个⽂件来表⽰⼀个视图,所以以上与表有关的也同样适⽤于视图。
3) 存储程序的名字
存储函数、存储过程和事件的名字都不区分⼤⼩写。触发器的名字要区分⼤⼩写,这⼀点与标准 SQL 的⾏为有所不同。
4) 列名和索引名
在 MySQL ⾥,列名和索引名都不区分⼤⼩写。例如,下⾯这些语句都是等价的:
SELECT name FROM student ;
SELECT NAME FROM student ;
mysql是什么系统SELECT nAmE FROM student ;
5)别名的名字
网页制作日历代码默认情况下,表的别名要区分⼤⼩写。SQL 语句中可以使⽤任意的⼤⼩写(⼤写、⼩写或⼤⼩写混⽤)来指定⼀个别名。如果需要在同⼀条语句⾥多次⽤到同⼀个别名,则必须让它们的⼤⼩写保持⼀
致。
下表总结了 SQL 元素在 Windows 和 Linux 系统是否区分⼤⼩写。
Windows Linux
数据库名
否(忽略⼤⼩写)是
表名是
表别名是unknown device感叹号
列名否(忽略⼤⼩写)
列别名否(忽略⼤⼩写)
变量名是
在 Linux 服务器下创建数据库和表时,应该认真考虑⼤⼩写的问题,⽐如它们以后是否会迁移到 Windows 服务器上。
假设你在 Linux 服务器上创建了 abc 和 ABC 两个表,当把这两个表迁移到 Windows 服务器上时,就会出现问题;因为 Windows 系统并不区分⼤⼩写,abc 和 ABC ⽆差别。如果把表从 Linux 服务器迁移到 Windows 服务器时,也同样会遇到问题。
html5是什么意思1003无标题想要避免⼤⼩写问题,可以先选定⼀种⼤⼩写⽅案,然后⼀直按照该⽅案去创建数据库和表。
在阿⾥巴巴 Java 开发⼿册的 MySql 建表规约⾥提到:
【强制】表名、字段名必须使⽤⼩写字母或数字,禁⽌出现数字开头,禁⽌两个下划线中间只出现数字。数据库字段名的修改代价很⼤,因为⽆法进⾏预发布,所以字段名称需要慎重考虑。
通俗的说就是,MySQL 在 Windows 系统下不区分⼤⼩写,但在 Linux 系统下默认区分⼤⼩写。因此,数据库名、表名和字段名,都不允许出现任何⼤写字母,避免节外⽣枝。
⼀般建议统⼀使⽤⼩写字母,并且 InnoDB 引擎在其内部都是以⼩写字母⽅式来存储数据库名和表名的。这样可以有效的防⽌ MySQL 产⽣⼤⼩写问题。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论