php - 无法从表名中的大写字母替换为小写字母的 mySQL 表中读取数据 (PHP) (Wo_Langs -> wo_langs)
问题描述
该网站是用 PHP 编写的。连接到服务器(debian 9)上的数据库如下:
$sqlConnect = $wo['sqlConnect'] = mysqli_connect ($sql_db_host, $sql_db_user, $sql_db_pass, $sql_db_name, 3306);
在 mySQL (1) 数据库中的服务器上,表名具有大写字母(例如:Wo_Langs)。我的本地主机在 Windows 7 上,它不支持区分大小写。当我将数据库从服务器 (1) 导入到 localhost 时,表名中的所有大写字母都将替换为小写字母(例如:表名 Wo_Langs -> wo_langs)。在将数据库从localhost(2)导入服务器数据库(2)中的服务器时,对localhost上的数据库进行更改后,所有表名都以小写形式获得。托管的技术支持向我保证,他们在 mySQL 服务器的设置中设置了 lower_case_table_names = 0。但无论如何,当重命名表名 Wo_Langs -> wo_langs 时,该表中的数据不会显示在站点上。
解决方案
您必须更改 php 代码中的大小写以及创建查询以管理 CRUD 操作的位置。更改为与您的环境 Windows、Linux 中的实际表列名称匹配的大小写......
推荐阅读
- google-cloud-ml - Google ML Engine:通过 REST API 提交训练作业
- logging - Wildfly Swarm 中的重复登录
- python - 调整神经网络参数
- php - 在系统中从 .env 或 ENV 设置服务类
- c# - 将数据从 Unity (C#) 发布到服务器 (PHP)。每个部分都可以自己工作,但不能一起工作
- angular - 在输入中的每 4 位后添加空格
- multithreading - 玩 Scala 和线程安全
- nginx - 使用 nginx 强制相对 URI
- react-native - React Native - 警报组件方法中的“类型”是什么意思?
- c# - 将格式化值从 DataGridView 插入到数据库