[size=xx-large]MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:

1、数据库名与表名是严格区分大小写的;

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

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

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

MySQL在Windows下都不区分大小写。

所以在不同操作系统中为了能使程序和数据库都能正常运行,最好的办法是在设计的时候都转为小写,但是如果在设计的时候已经规范化大小写了,那么在Windows环境下只要对数据库的配置做下改动就行了,具体操作如下:

在MySQL的配置文件中my.ini [mysqld] 中增加一行

lower_case_table_names = 1

参数解释:

0:区分大小写

1:不区分大小写

在 MySQL 中,数据库和表对就于那些目录下的目录和文件。因而,操作系统的敏感性决定数据库和表命名的大小写敏感。这就意味着数据库和表名在 Windows 中是大小写不敏感的,而在大多数类型的 Unix 系统中是大小写敏感的。

奇怪的是列名与列的别名在所有的情况下均是忽略大小写的,而表的别名又是区分大小写的。

要避免这个问题,你最好在定义数据库命名规则的时候就全部采用小写字母加下划线的组合,而不使用任何的大写字母。

或者也可以强制以 -O lower_case_table_names=1 参数启动 mysqld(如果使用 --defaults-file=...\my.cnf 参数来读取指定的配置文件启动 mysqld 的话,你需要在配置文件的 [mysqld] 区段下增加一行 lower_case_table_names=1)。这样MySQL 将在创建与查找时将所有的表名自动转换为小写字符(这个选项缺省地在 Windows 中为 1 ,在 Unix 中为 0。从 MySQL 4.0.2 开始,这个选项同样适用于数据库名)。

当你更改这个选项时,你必须在启动 mysqld 前首先将老的表名转换为小写字母。

换句话说,如果你希望在数据库里面创建表的时候保留大小写字符状态,则应该把这个参数置0: lower_case_table_names=1 。否则的话你会发现同样的sqldump脚本在不同的操作系统下最终导入的结果不一样(在Windows下所有的大写字符都变成小写了)。[/size]

分享到:

2014-08-21 09:26

浏览 667

分类:数据库

评论

mysql 列名大写_MySQL数据库表名、列名、别名区分大小写的问题相关推荐

  1. mysql怎么修改表的列名字_修改表列名-怎么修改数据库表的列名-mysql修改表的列名...

    SQL中怎样修改一个表的列名呢?? 各个数据库不一样. oracle: ALTER TABLE 表名 RENAME COLUMN 列名 TO 新列名 sqlserver:exec sp_rename ...

  2. mysql数据库别名_MySQL数据库表名、列名、别名区分大小写的问题

    MySQL在Linux下数据库名.表名.列名.别名大小写规则是这样的: 1.数据库名与表名是严格区分大小写的: 2.表的别名是严格区分大小写的: 3.列名与列的别名在所有的情况下均是忽略大小写的: 4 ...

  3. mysql 吧库下的表名都加_mysql数据库表名大小写问题

    mysql数据库表名大小写问题 mysql数据库linux版本表名.字段名默认大小写敏感,即区分大小写. 查看mysql有关大小写参数: lower_case_file_system是一个只读参数,无 ...

  4. mysql 表名 空格_Mysql数据库表名空格处理

    这几天在用同事建的数据库,因为设计文档中的部分表名有空格,导致建表的时候也有,从网上找了好久才找改名来正确处理的办法. 使用 ` (即数字键1左边那个键) mysql> alter table ...

  5. mysql 把表名改成大写_mysql 把表名自动改为大写

    最近要做sql标准化,要求所有的表名,字段名大写,我总不能把代码给改一边把,于是找到druid,使用语法分析,拿到sql,把表名改为大写. package com.topnet.dao.util; i ...

  6. Oracle SQLServer MySQL查看当前所有数据库表名及其他信息

    环境:Oracle 11g + SQLServer 2008 R2 + MySQL 5.1 Oracle: 1. 查看当前库的所有数据表 select * from all_tables; selec ...

  7. mysql 回退查询_MYSQL数据库表排序规则不一致导致联表查询,索引不起作用问题...

    Mysql数据库表排序规则不一致导致联表查询,索引不起作用问题 表更描述: 将mysql数据库中的worktask表添加ishaspic字段. 具体操作:(1)数据库worktask表新添是否有图片字 ...

  8. mysql高级操作_mysql数据库表的高级操作

    1.复制表结构 语句:create table 表b like 表a; 说明:a.只是使用表a的结构重新创建一个表b. b.只是复制表a的结构,不包含表的数据. 2.备份SQl执行结果 语句:crea ...

  9. mysql 把表名改成大写_mysql将表名改成大写的实例

    MYSQL将表名称修改成大写的存储过程 本文为大家分享了MYSQL将表名称修改成大写的存储过程,具体内容如下 1. 条件: 1.1 Mysql设置对大小写敏感 2. 执行下述存储过程: #call u ...

最新文章

  1. 【数据库】mysql 常用命令(一)
  2. 网络工程师_记录的一些真题_2017下半年上午
  3. 个人网站建设要避开这些“通病”
  4. OC之非ARC环境下循环retain问题
  5. 怎么创建dllwenjian_如何创建和使用dll及lib文件
  6. JDBC实例--JDBC连接池技术解密,连接池对我们不再陌生
  7. centos7设置输入密码三次错误锁定账号
  8. 数据库ACID、脏读、不可重复读和幻读
  9. 21个非常实用的She脚本实例
  10. 触发器的创建和使用(sql2005)
  11. mybatis mysql 注解_Mybatis注解的使用
  12. 2021年美赛M奖,圆我两年建模梦
  13. 【建模算法】基于遗传算法求解TSP问题(Python实现)
  14. python坐标轴刻度设置为一个函数_Python坐标轴操作及设置代码实例
  15. php获取客户端IP地址的几种方法
  16. 1.R语言基本绘图分类
  17. EXPLOITING CVE-2016-2060 ON QUALCOMM DEVICES
  18. 杭州自己缴纳社保五险条件
  19. JAVA毕设项目民航售票管理系统(java+VUE+Mybatis+Maven+Mysql)
  20. 2022群发邮件软件有哪些?哪个好用呢?解读如何大量群发邮件及单显功能

热门文章

  1. mysql中查找表结构用什么_MySQL查询表结构命令
  2. 手撕代码(Simple)- Java后端高频面试算法题集锦 1
  3. 第5讲 | 从物理层到MAC层:如何在宿舍里自己组网玩联机游戏?
  4. SQL语句(五)子查询
  5. GNSS增强定位技术发展与星地融合应用
  6. 光纤通信工程-PDH和SDH介绍(七)
  7. 腾达fh450虚拟服务器,腾达(Tenda)FH450路由器设置上网方法
  8. html 柱状图 插件,chartjs —— jquery柱状图插件
  9. 电影《天才枪手》观后感
  10. 中级会计师考试计算机怎样操作,2019年中级会计职称考试机考模式操作不适应怎么办?...