zoukankan      html  css  js  c++  java
  • MySQL大小写问题

    原来Linux下的MySQL默认是区分表名大小写的,通过如下设置,可以让MySQL不区分表名大小写:
    1、用root登录,修改 /etc/my.cnf;
    2、在[mysqld]节点下,加入一行: lower_case_table_names=1
    3、重启MySQL即可;

    其中 lower_case_table_names=1 参数缺省地在 Windows 中这个选项为 1 ,在 Unix 中为 0,因此在window中不会遇到的问题,一旦一直到linux就会出问题的原因.

    MYSQL在LINUX下数据库名、表名、列名、别名大小写规则如下: 

    1.数据库名表名是严格区分大小写的 

    2.表的别名是严格区分大小写的 

    3.列名与列的别名在所有的情况下均是忽略大小写的 

    4.变量名也是严格区分大小写的 

    MYSQL在WINDOWS下都不区分大小写

    (1)  关键字: 不区分大小写    select * fRom table_name 和 select * from table_name 效果是一样的

    (2) 标示符(如数据库名称和表名称):不区分大小写。如存在表users,那么select  *  from users和select *  from uSers 效果一样。网上说这跟操作系统有关,在所有Unit操作系统(除了使用HFS+的Mac OS 之外)上都是区分大小写的,而在windows上是不区分大小写的。(网上的这一说法没有验证过,我在windows server2003上是不区分大小写的)
    (3) 表的别名:不区分大小写  select m.* from users m where M.username = 'aa';
    (4) 列的别名:不区分大小写  select uName from (select username as uname from users where id = 768)

  • 相关阅读:
    【Vertica】vertica配置ODBC
    【oracle】【demo】oracle批量造数据
    【oracle】oracle系统视图nls_database_parameters
    【oracle】interval函数
    【DB2】DB2帮助文档
    【oracle】【sql】oracle去重
    【oracle】【sql】oracle分组
    【oracle】【性能】case表达式
    oracle EXP-00028
    Nginx系列~Nginx服务启动不了
  • 原文地址:https://www.cnblogs.com/wzyxidian/p/5407169.html
Copyright © 2011-2022 走看看