【问题标题】:PHP MYSQL configuration for handling case insensivity in table names用于处理表名中不区分大小写的 PHP MYSQL 配置
【发布时间】:2015-12-03 14:42:17
【问题描述】:

在我的应用程序数据库中,有些表的名称是小写字母,有些是大写字母。我想让我的数据库通过 PHP 运行查询而不考虑表的情况。

在亚马逊 RDS 实例上,我设置了 lower_case_table_names=1 的值,以使我的数据库不区分大小写。

当我在 HeidiSQL 或 Phpmyadmin 中使用小写表名运行查询时,我可以运行查询。但是当我通过 PHP 文件运行相同的查询时,查询不运行并且显示表名不存在错误。

我需要在 PHP 端进行任何其他设置吗?

【问题讨论】:

  • 你的操作系统是windows还是linux?
  • 更改配置后服务是否重启?
  • 或者你可以规范你的名字的大小写并绕过问题......
  • @GoudaElalfy Linux 操作系统
  • @andre3wap 是的,我在进行这些配置更改后重新启动服务,之后我可以在 HeidiSQL 中运行查询,无论大小写如何。

标签: php mysql case-sensitive rds


【解决方案1】:

更新你的mysql配置文件:/etc/mysql/my.cnf 设置

lower_case_table_names = 1

然后重启mysql

设置 lower_case_table_names = 1 后,您应该导入数据库,然后将其删除并重新创建。

【讨论】:

  • 在 my.cnf 中这个设置已经存在,即 lower_case_table_names = 1
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-09-02
  • 2014-03-25
  • 1970-01-01
  • 2016-11-12
  • 2012-10-05
相关资源
最近更新 更多