如何让 PHPMyAdmin 显示 MySQL 警告?
Posted
技术标签:
【中文标题】如何让 PHPMyAdmin 显示 MySQL 警告?【英文标题】:How to get PHPMyAdmin to show MySQL warnings? 【发布时间】:2010-09-11 12:35:01 【问题描述】:为了方便更新远程数据库,我使用phpMyAdmi
n。
但默认情况下它不显示警告,这让我最近陷入了一些尴尬的麻烦,我正在更新一个字符串不在其列表中的 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'