Mysql数据库名和表名的大小写敏感性问题

来源:asp之家 时间:2010-06-07 14:07:00 

在 MySQL 中,数据库和表对应于那些目录下的目录和文件。因而,操作系统的敏感性决定数据库和表命名的大小写敏感。这就意味着数据库和表名在 Windows 中是大小写不敏感的,而在大多数类型的 Unix 系统中是大小写敏感的。一个特例是 Mac OS X,当缺省的 HFS+ 文件系统使用时。然而 Mac OS X 还支持 UFS 卷,那些在 Mac OS X 是大小写敏感的就如他们在任一 Unix 上一样。查看章节 1.8.3 MySQL 对 ANSI SQL92 的扩展。

注意:尽管在 Windows 中数据库与表名是忽略大小写的,你不应该在同一个查询中使用不同的大小写来引用一个给定的数据库和表。下面的查询将不能工作,因为它以 my_table 和 MY_TABLE 引用一个表:

mysql> SELECT * FROM my_table WHERE MY_TABLE.col=1;

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

表的别名是区分大小写的。下面的查询将不能工作,因为它用 a 和 A 引用别名:

mysql> SELECT col_name FROM tbl_name AS a WHERE a.col_name = 1 OR A.col_name = 2;

如果记忆数据库和表名的字母大小写有困难,建议采用一个一致一约定,例如总是以小写字母创建数据库和表。

避免这个问题的另一个办法就是以 -O lower_case_table_names=1 参数启动 mysqld。缺省地在 Windows 中这个选项为 1 ,在 Unix 中为 0。

如果 lower_case_table_names 为 1 ,MySQL 将在存储与查找时将所有的表名转换为小写字线。(从 MySQL 4.0.2 开始,这个选项同样适用于数据库名。) 注意,当你更改这个选项时,你必须在启动 mysqld 前首先将老的表名转换为小写字母。

$ pwd

/data1/etl/aiinsight/ScheduleServer/mysql/support-files

$ ./mysql.server stop

$ pwd

/data1/etl/aiinsight/ScheduleServer/mysql/bin

./mysqld_safe --lower_case_table_names

方法2:修改my.cnf配置文件

在[mysqld]节下加入

lower_case_table_names=1

标签:Mysql数据库,表名,大小写,Mysql教程
0
投稿

猜你喜欢

  • phpmyadmin 数据导入导出问题

    2007-08-06 15:23:00
  • ASC码对照表

    2008-08-07 13:07:00
  • 理解和使用Oracle 8i分析工具LogMiner

    2010-07-16 13:22:00
  • Dreaweaver MX 2004新功能:图片处理

    2010-09-02 12:38:00
  • PL/SQL实现Oracle数据库任务调度

    2010-07-20 12:57:00
  • DBA经验:如何进行MySQL数据库表的故障检测

    2009-02-12 17:37:00
  • 服务器端控件是如何操作的?

    2009-11-01 15:22:00
  • 大写锁定提醒

    2009-06-11 13:12:00
  • Study jQuery in a Simplified Way

    2010-01-30 12:55:00
  • Favicon图标小常识

    2010-04-01 12:01:00
  • 如何在事件代理中正确使用 focus 和 blur 事件

    2010-01-30 12:51:00
  • MySQL数据库性能优化之表结构优化

    2012-05-08 07:10:34
  • MySQL索引类型一览 让MySQL高效运行起来

    2010-04-22 16:52:00
  • 记Qzone项目组视觉设计标注的前前后后

    2010-03-24 18:03:00
  • 404页面设计一样可以闪光

    2007-08-19 15:09:00
  • asp代码WinHttp.WinHttpRequest.5.1使用例子

    2010-03-11 21:28:00
  • photoshop快捷键大全及使用技巧

    2007-10-26 07:40:00
  • msxml3.dll 错误解决办法

    2009-05-25 18:02:00
  • 标签水平右对齐更适合中文网站

    2009-05-01 11:54:00
  • 用ASP动态生成JS表单验证代码

    2007-09-30 20:38:00
  • asp之家 网络编程 m.aspxhome.com