gpt4 book ai didi

mysql - CakePHP 2 应用程序在本地工作正常,但在运行时返回数据库错误?

转载 作者:行者123 更新时间:2023-11-29 06:07:57 25 4
gpt4 key购买 nike

过去几个月我一直在开发 CakePHP 应用程序,并最终将其放在互联网上的测试服务器上。安装和使用相当容易,并且在一定程度上有效。

存在与服务器的数据库连接,应用程序可以从数据库检索数据。但是,某些页面现在返回如下 SQL 错误:

Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'personel.companyid' in 'where clause'

我认为这可能是应用程序的错误,因此我重新检查了本地副本,本地副本工作正常。然后,我检查了测试服务器上的数据库架构,以查看在我收到这些错误的所有情况下该列是否确实存在。显然未知的列在那里,包括我的本地数据库的副本。

我很困惑为什么会发生这种情况。我的本地计算机和测试服务器之间唯一的不同之处在于,我在设置了 XAMPP 的 Windows 计算机上本地开发了该站点,而测试服务器在 Linux (CentOS) VPS 上运行。

是否还有其他因素可能导致此问题?

编辑:*
以下是两个失败的查询:

Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'personel.companyid' in 'where clause'

SQL Query: SELECT `Personel`.`id`, `Personel`.`firstname`, `Personel`.`surname`, `Personel`.`email`, `Personel`.`companyid`, `Personel`.`accesslevel`, `Personel`.`poc`, `Personel`.`password`, `Personel`.`telephone`, `Accesslevel`.`id`, `Accesslevel`.`acclevname` FROM `personel` AS `Personel` LEFT JOIN `accesslevels` AS `Accesslevel` ON (`Personel`.`accesslevel` = `Accesslevel`.`id`) WHERE `personel`.`companyid` = 1

还有这个:

Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'personel.companyid' in 'where clause'

SQL Query: SELECT `Personel`.`id`, `Personel`.`firstname`, `Personel`.`surname`, `Personel`.`email`, `Personel`.`companyid`, `Personel`.`accesslevel`, `Personel`.`poc`, `Personel`.`password`, `Personel`.`telephone`, `Accesslevel`.`id`, `Accesslevel`.`acclevname` FROM `personel` AS `Personel` LEFT JOIN `accesslevels` AS `Accesslevel` ON (`Personel`.`accesslevel` = `Accesslevel`.`id`) WHERE `personel`.`companyid` = 1

最佳答案

我认为查询是区分大小写的。尝试在任何地方使用大写的 Personel

引用http://dev.mysql.com/doc/refman/5.0/en/identifier-case-sensitivity.html 。第一段将解释 MySQL 在 Unix 上区分大小写,而在 Windows 上不区分大小写。

关于mysql - CakePHP 2 应用程序在本地工作正常,但在运行时返回数据库错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10580731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com