MySQL查询返回负行号


MySQL query returning a negative row number

这肯定是一件奇怪的事情。我使用MySQL来显示一系列警报,我使用的查询按照警报的级别进行分隔。该表有五列,但这里使用的是级别列(警报级别:1-正常;2-中等;3-高)。ID仅用于显示查询的异常情况。

奇怪的是,当我运行这个查询时,它会正常显示:

SELECT * FROM `alerttxt` ORDER BY level ASC

当我切换顺序时,它在网页上丢失了一个条目,但显示了PHPMyAdmin中的所有行。。。这本身就很奇怪:

SELECT * FROM `alerttxt` ORDER BY level DESC

但当我加入一个额外的元素时:

SELECT * FROM `alerttxt` WHERE level = '2' ORDER BY ID ASC

事情失控了。我在PHPMyAdmin中运行了同样的查询,同样使用ORDERBYIDDESC,返回如下:

    Showing rows 0 - -1

我以前从未见过这种情况,也不太确定如何修复。其他人以前见过这种情况并能够修复吗?谢谢大家!

增加了2012年8月31日-针对脾气暴躁的

ID  level   system     status                           restoretime
0   2       MyISU      System is functioning normally   NULL
1   2       Network    System is functioning normally   NULL
2   1       Blackboard System is functioning normally   NULL
3   3       Email      System is functioning normally   NULL
4   1       Banner     System is functioning normally   NULL

结构:

Column      |  Type         | Null  |  Default
-----------------------------------------------------------------
ID             int(11)        No         
level          varchar(3)     No       1     
system         varchar(255)   No         
status         varchar(755)   No       System is functioning normally    
restoretime    text           Yes      NULL 

我认为这是phpMyAdmin中的一个错误,因为搜索该错误消息和注释似乎证实了这一点。检查起来很容易:在MySQL控制台中运行您要求的查询。