为啥 mysql 区分大小写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥 mysql 区分大小写相关的知识,希望对你有一定的参考价值。

是否区分大小写是受平台限制的,比如安装在windows上的mysql,默认就不区分大小写。但是安装在linux上的mysql默认是区分大小写的,因为linux这个系统本身就是区分大小写的。但是可以通过修改配置让跑在linux上的mysql不区分大小写:
[mysqld]
lower_case_table_names=1 #不区分大小写
参考技术A 因为mysql规定了要区分那就是要区分

mysql 存储过程区分大小写

CREATE PROCEDURE
BEGIN
INT
是不是必须使用大写啊
mysql> delimiter //

mysql> CREATE FUNCTION hello (s CHAR(20)) RETURNS CHAR(50)
-> RETURN CONCAT('Hello, ',s,'!');
-> //
Query OK, 0 rows affected (0.00 sec)

mysql> delimiter ;

mysql> SELECT hello('world');
+----------------+
| hello('world') |
+----------------+
| Hello, world! |
+----------------+
在此例中-RETURNS CHAR(50)--是什么意思?请分析一番/谢谢

不区分大小写,RETURNS CHAR(50)是指结果返回一个长度为50 的字符串
RETURNS字句只能对FUNCTION做指定,对函数而言这是强制的。它用来指定函数的返回类型,而且函数体必须包含一个RETURN value语句。追问

是不是所有的存储过程,在自定义函数时都要加上此句呢

追答

不是的,最简单的格式如下
CREATE PROCEDURE存储过程名 (参数列表)
BEGIN
SQL语句代码块
END

追问

为何出来2个return尼
一个是returns
一个是return

追答

return是在语句中定义你的返回类型,RETURNS是当存储过程里有return的存在后才能使用的,在抬头处进程定义,前者类似具体的地方,後者属於全局的大方向的

参考技术A mysql语句不区分大小写。不需要使用大写。

以上是关于为啥 mysql 区分大小写的主要内容,如果未能解决你的问题,请参考以下文章

oracle为啥区分大小写?

请问mysql数据类型是不是区分大小写?

mysql 存储过程区分大小写

如何查看mysql表名字段是不是区分大小写

mysql 字段值不区分大小写

如何在mysql中使字段区分大小写