学院首页>网络编程>ORACLE>关于在ORACLE中sql语句里无法使用limit的处理

关于在ORACLE中sql语句里无法使用limit的处理

作者:大天使 来源:未知 添加时间:2006-5-21 11:05:57
 我以前应朋友的要求写过一篇jsp关于分页的教程,后来收到了很多朋友的email,对我提出了很多批评和指正,我在此表示感谢。还有很多朋友对一些代码表示了疑惑,虽然我平时很忙,但我尽量能为每一个初学者提供帮助。很多朋友的来信中集中对我samples里面的sql语句表示了疑惑,在这里我想为大家解释一下。 

言归正传;) 
说一下关于在ORACLE中sql语句里无法使用limit的处理方式 
我做jsp的平台是在linux6.2下,jdk1.3,mysql。 
在我前一篇samples里面的sql语句是这样的: 
sql = "select a_id,a_title,a_author,aID,a_time,a_readtime,sID from article order by a_id desc limit "+ spage +","+ ipage; 

这句sql在mysql调试是没有问题的,但在ORACLE下,问题就出来了 
ORACLE不认这种形式。 
但我们可以用变通一点的办法,我也给个示例: 

sql = "select a_id,a_title,a_author,aID,a_time,a_readtime,sID from article order by a_id"; 

int a; 
while (rs.next()) { 
a++; 
if (a<spage||a>=ipage+spage)continue; 
... 


具体的大家可以慢慢理解;) 

ORACLE作为名门闺秀,hehe,很多方面当然要跟别的数据库不一样,不然,怎么体现身价呢;) 
还有一个问题,mysql数据库里面有一种method叫 auto_increment,自增字段,相信大家都接触过,但是ORACLE也没有这样的method,不过在ORACLE有一个自带的object叫sequence, 利用sequence方法就可以完成mysql中 auto_increment的作用 ;) 
站内搜索