呵呵,是的!mysql的数据库名、表名、列名等都是不区分大小写的!

解决方案 »

  1.   

    在UNIX下是严格区分大小写的,不清楚怎么设置称不去分大小写的。
      

  2.   

    在Unix下的确是区分大小写的.........我想是因为mysql的数据也是以文件的形式存放的原因吧表名和字段名都是区别大小写了,所以只好设计的时候自己注意了....推荐用C的命名规范e.g. user_name我以前用JAVA的规范userName,最后移植到unix下痛不欲生啊
      

  3.   

    哈哈,是我错了!!!!在MySQL中,数据库和表对应于在那些目录下的目录和文件,因而,内在的操作系统的敏感性决定数据库和表命名的大小写敏感性。这意味着数据库和表名在Unix上是区分大小写的,而在Win32上忽略大小写。 注意:在Win32上,尽管数据库和表名是忽略大小写的,你不应该在同一个查询中使用不同的大小写来引用一个给定的数据库和表。下列查询将不工作,因为它作为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;列的别名是忽略大小写的。
      

  4.   

    在 Unix 下,
    数据库名与表名是严格区分大小写的在任何情况下,
    表的别名是严格区分大小写的,列名与列的别名在所有的情况下均是忽略大小写的。