# Re: 请教小吴 RDO 中Cursor rdUseSrver的问题

Posted by 小吴 on November 04, 1998 at 07:34:24:

In Reply to: 请教小吴 RDO 中Cursor rdUseSrver的问题 posted by cww on November 03, 1998 at 17:07:06:

你可以试看看，在 SQL Server 上建一个资料表，里面放 10 万笔资料，然后在 VB 中使用 SELECT * FROM table，设定不同的 cursor type 来看看效果如何。

你会发现，如果设为 client-side cursor，则 respone time 很快。因为只要收满 100 笔资料控制权就交回给 VB。如果设为 server-side cursor 的话，你会发现 respone time 很慢，看起来似乎 ODBC 要等到 cursor 全部建立完毕才会把资料回传。

但是如果你使用 MoveLast 呢？你会发现 client-side cursor 的硬碟开始动作了，但是 server side cursor 却不会。如果你把资料笔数改成 20 万笔、甚至 50 万笔。使用 client side cursor 的电脑如果 RAM 不够多的话必当。但是使用 server-side cursor 却不会。

所以要使用那种 cursor 要看你的需求啦!

不过我还是要提醒一下，RDBMS 跟 ISAM 是完全不一样的东西。不要把以前 ISAM 的观念套用到 RDBMS 上来。RDBMS 可以很有效率地储存比 ISAM 多许多倍的资料，但是从 RDBMS 中取出资料的效率则比 ISAM 低许多。一般而言，我们不会从 RDBMS 中取超过 100 笔的资料。如果超过的话就要检讨一下你的资料库观念了喔!

Follow Ups:

- 再请教小吴CursorType的问题 cww 09:02:47 11/04/98 (1)
  - Re: 再请教小吴CursorType的问题 小吴 15:54:09 11/05/98 (0)