Seek Works on Server-Side cursor? 
Author Message
 Seek Works on Server-Side cursor?

I am completely baffled by this. Everywhere I read about using Seek with ADO
and the Microsoft OLEDB Jet Provider, it says that you can't use seek. I
thought this was true until today.

Why does Seek work on a server-side cursor with the Jet provider and not on
a client side cursor? The logic doesn't make sense to me? Server-side
creates a set of keys so how are the indexes used?

Thanks.



Thu, 03 Oct 2002 03:00:00 GMT  
 Seek Works on Server-Side cursor?
I assume you're attaching tables from SQL Server.  JET has optimizations
that will attempt to use its functionality (table seeking) on remote servers
if it can by off-loading the work to the RDBMS.  JET normally wants to
pull-back the tables involved in a query and break it down on the client
machine (wherever the JET engine is running).  It is probably passing some
kind of syntax that allows SQL to perform an index seek (more than likely a
clustered index seek).  Turn on Profiler for SQL and you should see the
actual syntax being sent by JET and what the server is responding with.

Just a thought....

--
Patrick Logan, MCSD
Senior Technical Development Advisor
McKessonHBOC -- Extended Care Solutions Group

Opinions expressed are my own and not necessarily those of McKessonHBOC.



Fri, 04 Oct 2002 03:00:00 GMT  
 Seek Works on Server-Side cursor?
No, actually I'm just using ADO to access a native Access database and
tables. When you use the Provider for Jet, you can actually do a seek, but
with a server side cursor? It doesn't make logical sense why this would
work.

I thought a server-side cursor simply makes a keyset (set of pointers to the
data) and making a client-side cursor would buffer the whole set of info to
the client. How can you read and use indexes on a server side cursor? In
DAO, you had to open up a Table Type recordset to read the indexes. Same
thing in ADO but server side?

Just trying to make sense of this. No one has ever been able to answer this
question. Interesting.

Thanks for the reply.



Fri, 04 Oct 2002 03:00:00 GMT  
 Seek Works on Server-Side cursor?
I don't think JET implements server-side cursors does it?  It's not a server
engine.  I have a feeling JET is interpreting various settings and requests
(like seek) and is using what it can do and implements an approximation to
your request.

--
Patrick Logan, MCSD
Senior Technical Development Advisor
McKessonHBOC -- Extended Care Solutions Group

Opinions expressed are my own and not necessarily those of McKessonHBOC.



Fri, 04 Oct 2002 03:00:00 GMT  
 Seek Works on Server-Side cursor?
According to the following article, Seek can be used with ADO and JET.
http://msdn.microsoft.com/library/officedev/odeopg/deovrfindingrecord...
rdsetobject.htm

Here is a quick quote:  "Because the ADO Seek method uses an index, it is a
good idea to specify an index before you search.  However, if you don't
specify an index, the JET database engine will use the primary key index."

Q article: Q243465 says, "In order for the Seek method to function, you must
use a server-side cursor..."

--
Patrick Logan, MCSD
Senior Technical Development Advisor
McKessonHBOC -- Extended Care Solutions Group

Opinions expressed are my own and not necessarily those of McKessonHBOC.



Fri, 04 Oct 2002 03:00:00 GMT  
 Seek Works on Server-Side cursor?
Hi Patrick -

Yes the Jet Provider does support a server-side cursor. Since Access doesn't
really have a "server-side" the keyset that is created is placed on the
local client machine vs. the keyset built on SQL server is actually placed
on the server.

Even after reading the article, if you notice, the location of the cursor is
not specified. The default is server side if you don't specify so it works.
But my question still stands. As you can see, no one really knows why it
only works on a server-side cursor and will NOT work with a client side
cursor.

This doesn't make sense to me and no one really knows the answer.

Thank you.



Sat, 05 Oct 2002 03:00:00 GMT  
 
 [ 6 post ] 

 Relevant Pages 

1. Getting ADO Sort property to work with Server Side Cursors

2. Server side or client side cursors?

3. ADO-Access2000: Server-side vs Client-side cursor

4. ?client-side vs server-side cursors

5. Client Side and Server Side Cursors

6. difference betwen Client-side and Server-side cursors?

7. Client side and Server side script working together

8. ADO - RecordCount only works with Client side cursors?

9. ADO - RecordCount only works with Client side cursors?

10. ADO - RecordCount only works with Client side cursors?

11. ADO - RecordCount only works with Client side cursors?

12. ADO Dynamic Cursor/Server Side

 

 
Powered by phpBB® Forum Software