我使用PHPMyAdmin 是为了方便更新远程数据库。
但默认情况下它不显示警告,这最近让我陷入了一些尴尬的麻烦,我正在更新一个 SET 字段,其中的字符串不在其列表中并且没有注意到问题。
我正在使用2.11.9.1 (Dreamhost's default install).
在PHPMyAdminwiki 上,它将“显示警告”列为2.9.0 版的一项功能,甚至将“显示所有警告”列为 2.10.2 的一项功能——但我该如何真正打开它呢?文档不是很好。
我使用PHPMyAdmin 是为了方便更新远程数据库。
但默认情况下它不显示警告,这最近让我陷入了一些尴尬的麻烦,我正在更新一个 SET 字段,其中的字符串不在其列表中并且没有注意到问题。
我正在使用2.11.9.1 (Dreamhost's default install).
在PHPMyAdminwiki 上,它将“显示警告”列为2.9.0 版的一项功能,甚至将“显示所有警告”列为 2.10.2 的一项功能——但我该如何真正打开它呢?文档不是很好。
我只是在寻找同样的东西。
当我INSERTs使用标准的 phpMyAdmin 'insert' 表单运行时,行会被插入,但会出现一个红色条,说明任何警告。但是当我进行批量插入时,不会出现任何警告,而是出现一个绿色条,只是说明受影响的行数(给你的印象是一切都成功了,而实际上它可能没有)。
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 脚本执行是行不通的……(从 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;
我不相信 Dreamhost 让您可以访问他们安装 phpMyAdmin 的配置文件。但是,您可以轻松地自己安装 phpMyAdmin,方法是从他们的网站下载源代码并将其解压缩到您要访问的目录(例如 your-domain.com/phpma)。然后,按照网站的说明编辑您的配置文件(其中应包括启用您所要求的警告)。
按照网站的说明编辑您的配置文件(其中应包括启用您所要求的警告)。
嗯,是的,它应该。但是我在配置文件中看不到它,在您链接到的页面中也看不到它。我已经在明显的地方寻找信息,相信我。
我可能弄错了,但如果我没记错的话,您需要访问 phpMyAdmin 配置文件才能启用它。