小弟最近做一个话单项目,数据量非常大,一天一亿多条话单,所以各种查询很耗时,看到有些公司的这种查询是一边查询一边显示数据,就如同pl/sql developer中点击查询后再点击向下的箭头,下面数据一条条的添加,不知道这种功能是咋实现的,忘高手解答! 
我知道9i后用管道表函数可以依次输出,但jdbc或oci怎么接收的呢? 
难道要自己用socket实现jdbc?不是用分页查询、也不是问怎么从服务器将数据传到客户端,而是请问oracle数据库怎么能在查询的同时逐条将数据送往请求的服务端,而不是查询完后一起将数据送出来!
谢谢!

解决方案 »

  1.   

    传rownum参数也是一种方法, 如: select * from aaa where rownum < 10
      

  2.   

    这种传参数不就是分页嘛,我想要的是服务器到数据库之间建立一个管道,数据源源送来,难到要自己用TNS和TCP连接数据库端口再解析出来?
      

  3.   

    目的不明,不如调用SQLPLUS 哈哈。
      

  4.   

    自己搞了几天,有点眉目了,用java存储过程基本能实现这个功能。先用游标查询,遍历游标同时用管道表函数将行数据作为参数,调用java存储过程,通过java存储过程将行数据发给消息中间件或用socket发给服务器或用rmi调用服务器方法,再从服务器传给客户端。现在问题是游标要查询完了才能打开,能否没查询完但能读出已查询的行数据呢?