我的PHPMyAdmin 4.1.14在PHP 5.5.12上运行似乎存在一个主要问题。
在对表执行某些请求后,我无法再显示表的内容,也无法编写简单的SQL请求来显示它。
这会影响特定的表格,其他表格则完美无缺。
所以我写道:
this._canvas.removeAttribute("data-caman-id");
Caman(this._canvas, function () {
...
我收到错误消息,说我已尝试过此请求:
SELECT * FROM pj_empathie WHERE 1
这个'ORDER BY id desc)ANDaccepte = 1 ANDsecret = 0'来自哪里?
我认为某处存在某种缓存,所以我尝试了:
SELECT * FROM pj_empathie WHERE 1 ORDER BY id desc) ANDaccepte=1 ANDsecret=0
LIMIT 0, 25
没有任何改变。
更奇怪的是,如果我重命名或复制表,新表工作正常。如果我重命名数据库,新数据库中的表可以正常工作。但是一旦我尝试将其重命名为第一个数据库名称或第一个表名,我就会再次收到错误。
感谢阅读:)
编辑:我找到了解决和重现的方法。首先我写这个请求:
CHECK TABLE `pj_empathie`;
ANALYZE TABLE `pj_empathie`;
REPAIR TABLE `pj_empathie`;
OPTIMIZE TABLE `pj_empathie`;
FLUSH TABLE `pj_empathie`;
这很有效。
在我写完这个请求之后,简单地说:
SELECT * FROM `pj_empathie` WHERE pj1 IN (SELECT id FROM pj WHERE clan=5 AND clan_accepte = 1 ORDER BY id ASC)
......不再工作了。 PHPMyAdmin尝试在请求结束时自动添加内容:
SELECT * FROM `pj_empathie` WHERE 1
看起来很像前一个结尾。
但我可以写
SELECT * FROM `pj_empathie` WHERE 1 ORDER BY id ASC)
...并且这样做有效,并且在此之后不再使用ORDER BY的简单请求。