问题标签 [mysql-error-1146]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1804 浏览

mysql - MySQL过程中的错误代码

我们在 MySQL 程序中遇到了一个小问题。我们在过程中放置​​了一些异常处理程序。但是我们想要检索过程中可能发生的任何错误的错误代码。有什么方法可以使用某种函数获取确切的错误代码(同样,我们在套接字 API 中使用 WSAGetLastError)?

例如,假设在引用不存在表的过程中有一个选择查询。在这种情况下,将产生错误(“表”不存在)。控件将被转移到异常处理程序,但没有任何意义信息。在这种情况下,我们可以使用确切的错误代码(1146)来处理它。但是如果错误是我们在异常处理程序中没有提到的其他东西怎么办?我们想在这种情况下获取错误代码以便稍后检查。有一个 SHOW ERRORS 查询,但如何在处理过程中使用它?我希望这更清楚。

我在这里也发现了这个问题: http : //www.eggheadcafe.com/software/aspnet/35923137/show-errors-question.aspx 但还没有人回答。

0 投票
3 回答
101 浏览

mysql - 重命名的 MySQL 表没有为 INSERT 查询重命名?

将我的 MySQL 5.1 MyISAM 表之一从 重命名为 后test_tablenametablename我发现如果我尝试执行 INSERT(或 REPLACE)查询,我会收到以下消息:

1146: 表 'dbname.test_tablename' 不存在

我已经三重检查了我的数据库抽象代码,并通过直接在服务器上运行查询来验证这一点。

根据 MySQL 服务器,CREATE TABLE语法是tablename,正如预期的那样,当我运行 时SHOW TABLES,它按预期列出tablename

发生这种情况有什么原因吗?

更重要的是,有没有比转储、删除、重新创建和重新加载表更简单的方法来解决这个问题?

0 投票
2 回答
824 浏览

python - 更改 django 默认模型设置

我刚开始使用 django 创建自己的应用程序教程(创建投票)我有点偏离,因为我想使用我自己已经存在的数据库模型创建一个应用程序。

在教程中它说

  • 表名是通过组合应用程序的名称(polls)和模型的小写名称——poll 和choice 自动生成的。(您可以覆盖此行为。)
  • 主键 (ID) 会自动添加。(您也可以覆盖它。)
  • 按照惯例,Django 将“_id”附加到外键字段名称。是的,您也可以覆盖它。

但是我看不到它在哪里提到如何覆盖这种行为?我已经这样定义了我的模型

现在当我进入外壳时,这就是我得到的

显然它找不到表 tvlistings_channels 因为它实际上被称为频道。那么如何更改默认值呢?

0 投票
2 回答
294 浏览

php - 扩展 PDO 类:为什么该方法返回 0 而不是错误消息?

跟进这里的帖子,看来我已经设法扩展了 pdo 类,

但是好像不太对——我是num_rows故意在查询中有错误的方法测试的,所以这个方法可以返回错误信息,

它应该返回,

SQLSTATE [42S02]:未找到基表或视图:1146 表 'xx_2011.table_not_exist' 不存在

但它返回了一个0!为什么??我该如何解决?

谢谢。

0 投票
2 回答
21980 浏览

mysql - restoring a MySQL database

I have created a file named ab.sql using the mysqldump utility of a database named library. It worked fine. Now i am trying to restore it using mysqlimport. My database already exists. But i want to override it. I am using the command

in the command line but it gives an error that says,

mysqlimport: Error: 1146, Table 'library.ab' doesn't exist, when using table: ab

desperately need help.

0 投票
3 回答
2989 浏览

mysql - SQL - AS - 表不存在 - 1146

我的查询是:

我收到 #1146 - 表 'databasename.temp' 不存在

我怎样才能让它工作?谢谢你。

0 投票
1 回答
1659 浏览

mysql - mysql 代理 r/w 复制和临时表

我正在 MySQL5.1 上进行主/从复制,并使用 mysql 代理 0.8.x 进行读写拆分

它工作正常,除了临时表。MySQL 抛出一个错误,即临时表不存在。

这是主服务器的查询日志:

这是从站的查询日志:

这是mysql错误消息:

如果我直接查询master(将php db连接更改为master而不是mysql-proxy),它可以正常工作。

我正在使用这个 mysql 代理配置:

有人知道如何解决这个问题吗?感谢您的任何帮助!

// 第二天编辑

我相信我知道为什么这不起作用:

MySQL Proxy 将 create tmp 和 insert select 语句发送到 master,master 将命令正确地复制到从站,然后在下一步中将 select 发送到从站。不幸的是,在 MySQL 中,tmp 表仅对发出它的连接有效,因此复制创建的 tmp 表对于从属服务器上的 mysql 代理发出的第二个连接无效。

我现在正试图通过更改我的应用程序并将与 tmp 表的连接直接发送到主服务器来解决这个问题。

如果您认为有更好的解决方案,请告诉我。

0 投票
2 回答
3403 浏览

mysql - 如何从数据文件夹加载mysql数据库?

我创建了一个 joomla 网站并开始准备将其导出到远程主机 - 主要在远程服务器上工作以修复目录树。但是,当我准备使用 phpMyAdmin 导出数据库时,它不存在。我试图在命令行中查询它,我得到一个“未知数据库”错误,就好像它不存在一样。数据库文件夹仍在 /data 中,因此没有被删除。我真的无法理解这一点,因为在此之前几分钟,该网站正在运行,并且该数据库已在 phpMyAdmin 中列出。有没有办法让我重新导入数据库?我有一个包含 .frm 文件的数据库文件夹,以及一个 db.out 文件。我不得不说,这不是我开始使用 MySQL 和 Joomla 以来遇到的第一个超自然问题。基本上每次我的电脑重新启动时,MySQL 服务拒绝我提供的密码 1-2 小时。我通过重置密码解决了这个问题,之后网站和数据库运行良好。我正在使用带有 XAMPP 的 Windows 7 在本地主机上进行开发,并将 MySQL 作为服务安装。Joomla 的版本是 1.6。提前致谢。

编辑 我尝试卸载 XAMPP 并完全擦除其目录中的所有内容,然后再次安装并将数据库的文件夹复制到新的数据目录中。虽然我可以通过使用 mysql 工作台连接到 mysql 来查看数据库,但所有表都被列为 0 KB 大小,如果我尝试打开表或尝试修复时出现错误 1146(表不存在)数据库。这真是越来越荒谬了。

0 投票
0 回答
848 浏览

mysql - 在 Doctrine 2 中跨多个数据库表实现类表继承(CTI)

请问需要帮忙吗?

我有 2 个类,一个 Parent 类,说 Person 和一个 Child,说 Employee 使用 Doctrine 2 的类表继承映射策略。类对应的表存在于不同的数据库表中: Person 表存在于数据库中:dbOne 和 Employee 表在 dbTwo 中。

类是这样的:

和孩子班

Employee 表的架构如下所示:

其实有两个问题。

  1. 由于 Doctrine 为每个数据库映射一个实体管理器,如果我调用

$this->entityManager->flush();

在 Person 对象上,它会标记一个错误:

如果我调用实体管理器(对于 dbTwo)来保存一个 Employee 对象,情况正好相反。当表在同一个数据库中时,问题不存在。请问我该如何解决这个问题?另外,如何检索实体管理器在 flush() 操作期间使用的 SQL 查询?了解生成和使用什么 SQL 会很有帮助 - 例如:

$this->entityManager->getQuery();//显然这只是为了解释我的意思

  1. 第二个问题是让 Doctrine 根据 @DiscriminatorMap 详细信息集在数据库表的 discr 列中插入正确的值:Person。当值是父实例(即Person)而不是子实例(即Employee)时,这很有效。感谢您的帮助。
0 投票
3 回答
87 浏览

mysql - 为什么mysql查询失败

.