Home  >  Article  >  Database  >  MySQL的大小写问题

MySQL的大小写问题

WBOY
WBOYOriginal
2016-06-07 16:19:081028browse

MySQL在linux下数据库、表名、列名、别名的规则: 1.数据库名与表名是严格区分大小写; 2.表的别名是严格区分大小写的; 3.变量名严格区分大小写; 4.列名与列的别名忽略大小写。 MySQL在windows下不区分大小写。 原因: MySQL在查询字符串时是大小写不敏感的,

   MySQL在linux下数据库、表名、列名、别名的规则:

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

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

  3.变量名严格区分大小写;

  4.列名与列的别名忽略大小写。

  MySQL在windows下不区分大小写。

  原因:

  MySQL在查询字符串时是大小写不敏感的,在编译MySQL时一般以ISO-8859字符集座位默认的字符集,这个字符集对大小写不敏感,因此在比较过程中中文编码字符大小写转换造成了这种现象。

  解决办法:

  1.表名区分大小写;

  在my.conf加入

  ower_case_table_names = 0

  0:区分大小写 1:不区分大小写

  2.字段值设置BINARY属性

  就可区分大小写

  下边是我在项目中所遇到的问题:

  前几天在做项目时(Linux环境),,无意间手一抖,创建了两个表名相同的数据库,而在写SQL查询数据库时,会出现

  select * from swxx_zxwd 和 select * from SWXX_ZXWD

  两种不同的结果。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn