2012-08-30 98 views
0

这确实是一件奇怪的事情。我正在使用MySQL来显示一系列警报,并且我正在使用的查询通过警报的级别进行分隔。该表有五列,但这里使用的是级别列(警报级别:1 - 正常; 2 - 中等; 3 - 高)。 ID用于仅显示查询的怪异性。MySQL查询返回一个负行数

奇怪的是,当我运行此查询时,它通常会显示:

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运行这个相同的查询,也使用ORDER BY ID DESC,返回如下:

Showing rows 0 - -1 

我以前从来没有看到这一点,我不太清楚如何解决它。任何其他人之前看过这个并能修复它?谢谢,所有!

新增12年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 
+0

你用什么mysql函数来查询你的sql? – Manhim

+0

“level”列的类型是什么? –

+1

不显示行0-1意味着在phpmyadmin显示2结果? – Grumpy

回答

0

我以为这是在phpMyAdmin的错误,因为搜索该错误消息和评论this answer似乎确认。这很容易检查:运行您在MySQL控制台中请求的查询。

+0

当然看起来像它。做了更多的研究,发现我们运行的PHPMyAdmin版本是3.5.0,最新的稳定版本是3.5.2.2,所以它看起来正是你所假设的:一个bug。发送给我们的服务器管理员一封电子邮件来升级它,所以一旦他这样做了,我会发布另一个评论,看看事情进展如何。谢谢! – synk