Skip to Content.
Sympa Menu

freetds - How MS implement Positioned cursors on SQL 6.5

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "Stevenson, Chris (SSABSA)" <chris AT ssabsa.sa.gov.au>
  • To: TDS Development Group <freetds AT franklin.oit.unc.edu>
  • Subject: How MS implement Positioned cursors on SQL 6.5
  • Date: Thu, 10 Feb 2000 09:55:18 +1030


> Simply put, most of the 2.0 enhancements can't be implemented cleanly
> and reliably on a relational database.

I disagree with this *very* strongly, and the proof is in
the pudding of all the (commercial) implementations.

Here is how MS do it - fresh from my packet snooping TDS
program, snooping on the JDK1.3rc1 JDBC-ODBC brisge, which
does support these things.

when you open a query they send
sp_opencursor(?, <sql-query>, ? ? ?)

which returns column info followed by an extra pseudo
column for the row information, and a 4 bit int for what
I presume is the cursor_id.

then when you go to a row, call first last etc, you
send an sp_cursorfetch with the cursor_id and a standard
result packet comes back.

And so it goes.

Unfortunately MS are as reluctant as everyone else to
release these proprietary calls... so its up to us to
work it out.

Anyone want to see my packets, or the snooping program?

> Sorry about the rant, I just get a little angry everytime I read the
> "JDBC 2.0 API" document.

I just want to see it work! I think this is a *major*
blocker for JDBC in enterprise houses, and I refuse
to pay $X0000 for what should be readily available.

Of course we all know *why* JDBC is not readily
available on MS.
chris.

-- Chris Stevenson ----------------------- SSABSA --
Senior Secondary Assessment Board of South Australia
60 Greenhill Road, Wayville SA 5034, Australia
email: chris AT ssabsa.sa.gov.au
phone: (08) 8372 7515
fax: (08) 8372 7590
----------------------------------------------------




Archive powered by MHonArc 2.6.24.

Top of Page