【问题标题】:mysql not accepting tablename as it ismysql不接受表名
【发布时间】:2020-02-12 12:23:05
【问题描述】:

我正在开发一个显示用户、管理员和超级管理员面板并使用 HMVC 实现功能的项目。这里的主要问题是,当我通过超级管理员用户登录时,必须从名为“users”的表中获取数据,但是当“users”变量传入$this->load->model('user_model', 'users'); 时,如果我运行项目,它会显示 DB错误为

A Database Error Occurred
Error Number: 1146
Table 'interview_panel.user' doesn't exist
SELECT COUNT(*) AS `numrows` FROM `user`
Filename: D:/xampp/htdocs/ba-tool/system/database/DB_driver.php
Line Number: 691 

所以基本上问题是我将参数作为“用户”发送,传递的值是没有“s”的“用户”,我的数据库中的另一个表也发生了同样的问题,导致整个项目停止。我也无法找到项目流程如何用于数据库查询。

CI 引导版本:Build 20170324,CI 版本:3.1.3

【问题讨论】:

  • 如前所述,您有名为 users 的表,但您正在获取表用户。请再次检查表名
  • 我还会检查这是否实际上是导致错误的行,并且您不会尝试在其他地方实际加载user(例如,如果它不会破坏您的代码,请将其注释掉,用不同的表名替换它,检查代码中的“用户”,记录一些东西,...)。
  • 显示调用模型和调用模型函数的代码。
  • this->load->model('user_model', 'users'); 行与表名无关。这样做是将模型类的名称设置为“用户”,仅此而已。

标签: php mysql codeigniter-3 hmvc


【解决方案1】:

谢谢大家的帮助,我发现了这个问题。这是由于 xampp 版本 7.3.9 和 php 一起安装,然后我安装了 xampp 7.2.26 并解决了问题,两个 php 版本的配置存在一些差异导致此错误

【讨论】:

    猜你喜欢
    • 2019-07-10
    • 1970-01-01
    • 2016-10-05
    • 2021-06-18
    • 2015-05-27
    • 1970-01-01
    • 1970-01-01
    • 2012-08-18
    • 2015-10-16
    相关资源
    最近更新 更多