MySQL语句中字母大小写规则随着语句元素的不同而变化,同时还要取决于MySQL服务器主机上的操作系统。

SQL关键字与函数名

关键字和函数名不区分字母的大小写。如、abs、bin、now、version、floor等函数、SELECT、WHERE、ORDER、GROUP BY等关键字。

数据库、数据表和视图的名字

在服务器主机上,MySQL数据库和数据表用底层文件系统中的目录和文件表示。因此数据库和数据表名字的默认字母大小写情况取决于服务器主机上的操作系统在文件名方面的规定。Windows文件名不区分字母的大小写,所以运行在windows主机上的MySQL服务器就不区分数据库和数据表名字的字母大小写。运行在Unix\Linux主机上的MySQL服务器区分数据库和数据表名字的大小写。(但是Linux下可以通过配置来实现忽略大小写)

MySQL中使用一个文件来表示一个视图,所以视图也符合上述规则。

存储程序的名字

存储函数、存储过程、事件的名字不区分字母的大小写。触发器的名字要区分字母的大小写。

数据列和索引的名字

数据列和索引的名字在MySQL环境里不区分字母的大小写。实例如下:

字符串值

字符串值是否区分字母大小写,这取决于它是二进制还是非二进制,非二进制字符还要取决于字符集的排序方式。

参考:

http://blog.csdn.net/hsd2012/article/details/51436946(以上内容转自此篇文章)

http://blog.csdn.net/shuaijunlan/article/details/51505614

http://blog.csdn.net/msibigbang/article/details/8863048

http://blog.csdn.net/kai404/article/details/52169108

http://blog.csdn.net/bluishglc/article/details/7634969

http://blog.csdn.net/cnhk1225/article/details/56290005

http://blog.csdn.net/xinew/article/details/5856105

http://blog.csdn.net/mascf/article/details/53349831

http://blog.csdn.net/xinew/article/details/5856263

http://blog.csdn.net/t_332741160/article/details/54346428

http://blog.csdn.net/zzhongcy/article/details/41316289

http://blog.csdn.net/workaccumulate/article/details/42143963

http://blog.csdn.net/willpan1234/article/details/56015396

http://blog.csdn.net/boya734698063/article/details/38421419

http://blog.csdn.net/neutrojan/article/details/8147752

MySQL大小写问题的简单说明(关键字/函数/表名)(转)的更多相关文章

  1. MYSQL存储过程,清除指前缀的定表名的数据

    MYSQL存储过程,清除指前缀的定表名的数据 DELIMITER $$ DROP PROCEDURE IF EXISTS `drop_table`$$ ),)) BEGIN ) DEFAULT NUL ...

  2. PHP+Mysql+easyui点击左侧tree菜单对应表名右侧动态生成datagrid加载表单数据(二)

    关于tree菜单生成,参考我的另一篇博文地址tree 菜单 实现功能:点击左侧tree菜单中的table,右侧通过datagrid加载出该表对用的所有数据 难点:获取该表的所有列名,动态生成datag ...

  3. MySQL 动态sql语句运行 用时间做表名

    1. 描写叙述 在使用数据的时候,我时候我们须要非常多数据库,并且想用时间来做表名以区分.可是MySQL在存储过程中不支持使用变量名来做表名或者列名. 比方,有一个表我们想以"2015-07 ...

  4. MySQL 中 You can't specify target table '表名' for update in FROM clause错误解决办法

    在MySQL中,写SQL语句的时候 ,可能会遇到You can't specify target table '表名' for update in FROM clause这样的错误,它的意思是说,不能 ...

  5. MySQL中You can't specify target table '表名'('sn_app_label') for update in FROM clause错误解决办法

    在有些时候有级联关系的数据放在了同一张表中,在写sql语句的时候可能会遇到这样的场景:我要插入两条数据,第一条是父节点,第二条是子节点,关联关系是父节点的自增长id:在写这样的sql语句时有可能就会出 ...

  6. shell 脚本连接mysql数据库查询database中表的数量和表名

    #!/bin/bash MYSQLHOST="127.0.0.1" MYSQLUSER="root" MYSQLPWD="root" MYS ...

  7. [转]MySQL 中 You can't specify target table '表名' for update in FROM clause错误解决办法

    原文链接:https://blog.csdn.net/qq_29672495/article/details/72668008

  8. mysql表名大小写问题

               默认情况下,MySQL 将以小写保存表名.一个避免 MySQL 服务器小写问题方法是以 -O lower_case_table_names=0 启动 mysqld.默认情况下,这 ...

  9. Mysql的表名/字段名/字段值是否区分大小写

    1.MySQL默认情况下是否区分大小写,使用show Variables like '%table_names'查看lower_case_table_names的值,0代表区分,1代表不区分. 2.m ...

随机推荐

  1. Oracle 参考脚本

    一.创建物化视图 --新建表空间 CREATE TABLESPACE MLOG_TBS LOGGING DATAFILE 'mlog_tbs.dbf' SIZE 32M AUTOEXTEND ON N ...

  2. ORACLE_AQ 队列

    Oracle AQ Demo,Step by Step 我准备用AQ来做一个数据仓库系统,提交分析任务队列.有以下需求: 1.利用通知异步的执行存储过程 2.设定队列大小极限 3.出列即删除 OK,l ...

  3. sublime 3 最新注册码

    http://9iphp.com/web/html/sublime-text-3-license-key.html

  4. ES6特性之模块【Modules】

    ES6之前已经出现了js模块加载的方案,最主要的是CommonJS和AMD规范.commonjs主要应用于服务器,实现同步加载,如nodejs.AMD规范应用于浏览器,如requirejs,为异步加载 ...

  5. AndroidStudio3.0 Canary 8注解报错Annotation processors must be explicitly declared now.

    体验最新版AndroidStudio3. Canary 8的时候,发现之前项目的butter knife报错,用到注解的应该都会报错 Error:Execution failed for task ' ...

  6. FTP初始化文件.netrc使用技巧[转发]

    FTP初始化文件.netrc使用技巧 FTP(文件传输)和E-mail(电子邮件).Telnet(远程登录)一样,是 Internet的三大主要功能之一.因为使用频繁,用户往往会遇到各种 各样的问题, ...

  7. [转]MapReduce浅析

    本文转自http://edisonchou.cnblogs.com/ 一.什么是MapReduce MapReduce是Google的一项重要技术,它首先是一个编程模型,用以进行大数据量的计算.对于大 ...

  8. Verification Mind Games---how to think like a verifier像验证工程师一样思考

    1. 有效的验证需要验证工程师使用不同于设计者的思维方式思考问题.具体来说,验证更加关心在严格遵循协议的基础上发现设计里面的bug,搜索corner cases,对设计的不一致要保持零容忍的态度. m ...

  9. UVM基础之-------uvm report机制的使用

    后面的例子我会继续补充: 1. 因为uvm默认定义的message格式比较长,非常不利于debug过程中的分析使用,一般情况下,开始使用uvm,都要利用uvm_report_server重新定义mes ...

  10. sp_Msforeachtable与sp_Msforeachdb详解

      一.简要介绍: 系统存储过程sp_MSforeachtable和sp_MSforeachdb,是微软提供的两个不公开的存储过程.从mssql6.5开始,存放在SQL Server的MASTER数据 ...