如何从数据库中取任意n条数据,请教各位大虾
我用select * from table order by col1 可能会一次性取出很多数据,导致程序运行速度很慢,各位大虾是否有好办法,让我每次可以只取出其中20条,分若干次取,并且一定要有col1排序 问题点数:20、回复次数:7Top
1 楼yangzi(笨笨)回复于 2001-06-21 20:50:00 得分 0
你搜索一下老贴子吧。
这个问题回答的太多了。Top
2 楼optimisticboy()回复于 2001-06-21 20:55:00 得分 5
可以用个游标嘛Top
3 楼cynthiacin(可儿)回复于 2001-06-21 21:02:00 得分 0
用一条语句可以吗??Top
4 楼ccat(智拙)回复于 2001-06-21 21:50:00 得分 0
好像ADO对象在前台可以实现。Top
5 楼wwl007(疑难杂症)回复于 2001-06-22 09:39:00 得分 0
to yangzi(笨笨)
!现在的人!老师不自己想一下就问!你说是吗Top
6 楼fredrick()回复于 2001-06-22 10:39:00 得分 10
如果你是通过odbc的话那么你就可以通过设置odbc中选项,具体是那个选项我忘了,不过可以这样的。如果你使用的是oracle自己呆的sql*net的话那么它又两个层次分别叫做UPI和OPI,那么在UPI也就是客户端的那方,你就可以设置要取数据的条数。但是还有一个更重要的概念你没有弄清楚,这就是如果你查询的数据量如果大过一个包的大小的话那么是返回不了的。一般包的大小为4k,所以在odbc或者其他的c/s构中通过cli(Call Level Interface)调用的结构如果需要返回多条记录那么就需要通过游标的机制。Top
7 楼fredrick()回复于 2001-06-22 10:42:00 得分 5
好像我有意点跑题了,如果直接连接的是服务器的话那么只能通过设置缓冲的大小了,如在sql*plus下设置对应的参数或者通过其他方式了。如,将记录编号,你就选择编号只有20条的范围来查询即可。Top




