如何让 PHPMyAdmin 显示 MySQL 警告?

Posted

技术标签:

【中文标题】如何让 PHPMyAdmin 显示 MySQL 警告?【英文标题】:How to get PHPMyAdmin to show MySQL warnings? 【发布时间】:2010-09-11 12:35:01 【问题描述】:

为了方便更新远程数据库,我使用phpMyAdmin。

但默认情况下它不显示警告,这让我最近陷入了一些尴尬的麻烦,我正在更新一个字符串不在其列表中的 SET 字段并且没有注意到问题。

我正在使用2.11.9.1 (Dreamhost's default install)

PHPMyAdmin wiki 上,它将“显示警告”列为version 2.9.0 的一项功能,甚至将“显示所有警告”列为 2.10.2 的一项功能——但我该如何真正打开它呢?文档不是很好。

【问题讨论】:

【参考方案1】:

我只是在寻找同样的东西。

当我使用标准 phpMyAdmin 'insert' 表单运行 INSERTs 时,行会被插入,但会出现一个红条,说明任何警告。但是当我进行 批量插入 时,不会出现任何警告,而是出现一个绿色条,只是说明受影响的行数(给您的印象是一切都成功了,而实际上它可能没有有)。

我发现我必须手动发送SHOW WARNINGS 命令。例如,在运行此查询时,我将两条语句都放入了 phpMyAdmin SQL 框。

INSERT INTO test2 SELECT * FROM test1;
SHOW WARNINGS;

这给出了如下警告列表...

Level    Code   Message
Warning  1265   Data truncated for column 'a' at row 1
Warning  1265   Data truncated for column 'a' at row 3
Warning  1265   Data truncated for column 'b' at row 3
Warning  1366   Incorrect integer value: 'x' for column 'b' at row...

注意事项:

您以后无法运行SHOW WARNINGS 命令,它将显示为空。当您单击“开始”时,它必须在您的初始查询框中。这是因为 mysql 只保存您运行的最后一个查询的警告。每次单击链接或按钮时,phpMyAdmin 都会在数据库上运行各种其他查询,因此您之前的警告会丢失。

phpMyAdmin 确实 支持显示来自自定义查询的多个结果。因此,将其作为一个 SQL 脚本执行 NOT 工作......(从版本 3.4.10.1 开始)

INSERT INTO test2 VALUES ('my text', 'something else');
SHOW WARNINGS;    # you won't see the warnings from here
INSERT INTO test2 VALUES ('my text', 'something else');
SHOW WARNINGS;

虽然上述方法在 phpMyAdmin 中不起作用,但它应该在 MySQL 命令行客户端中正常工作。因此,如果需要,请使用它。

如果您确实有多个插入并且想要显示所有警告,则必须将它们链接在一起作为单个 INSERT 语句。例如:

INSERT INTO test2 VALUES 
('my text', 'something else'), 
('my text', 'something else');
SHOW WARNINGS;

【讨论】:

【参考方案2】:

按照网站的说明进行 编辑您的配置文件(应该 包括像你一样启用警告 问)。

嗯,是的,应该的。但是我在配置文件中看不到它,在您链接到的页面中也看不到它。相信我,我已经在明显的地方寻找过信息。

【讨论】:

【参考方案3】:

我不相信 Dreamhost 允许您访问配置文件以安装 phpMyAdmin。但是,您可以通过从their website 下载源代码并将其解压缩到您要访问的目录(例如 your-domain.com/phpma),轻松地自己安装 phpMyAdmin。然后,按照website's instructions for editing your config file(应该包括启用您所要求的警告)。

【讨论】:

【参考方案4】:

我可能弄错了,但如果我没记错的话,您需要访问 phpMyAdmin 配置文件才能启用它。

【讨论】:

以上是关于如何让 PHPMyAdmin 显示 MySQL 警告?的主要内容,如果未能解决你的问题,请参考以下文章

php显示中文乱码,phpmyadmin里的MySQL数据库中文乱码,如何解决?

如何在 MAMP 中使用 phpMyAdmin 在 MySQL 中显示关系视图

phpmyadmin 为 mysql utf8_bin 排序列显示数字或 blob?

我不能让这个查询工作......'mysql''phpmyadmin'

如何在 PHPMyAdmin 中使 MySql 中的字段自动递增?

如何在 phpMyAdmin 中将 MySQL 版本升级到最新版本?