Jeff Urlwin wrote:
> That is an issue with the database itself. I believe there may be a
> workaround (check the archives). There is a "hack" which may allow this for
> you. Here's the text of the patch (from the DBD::ODBC pod documentation).
>
> SQL_ROWSET_SIZE attribute patch from Andrew Brown
> > There are only 2 additional lines allowing for the setting of
> > SQL_ROWSET_SIZE as db handle option.
> >
> > The purpose to my madness is simple. SqlServer (7 anyway) by default
> > supports only one select statement at once (using std ODBC cursors).
> > According to the SqlServer documentation you can alter the default setting
> > of
> > three values to force the use of server cursors - in which case multiple
> > selects are possible.
> >
> > The code change allows for:
> > $dbh->{odbc_SQL_ROWSET_SIZE} = 2; # Any value > 1
> >
> > For this very purpose.
> >
> > The setting of SQL_ROWSET_SIZE only affects the extended fetch command as
> > far as I can work out and thus setting this option shouldn't affect
> > DBD::ODBC operations directly in any way.
> >
>
> As always -- your mileage may vary...
>
> Jeff
Be warned, you may get away with it, but you *can* put your server in a
spin-lock doing this if you don't retrieve all the data from each row for each
fetch.
--
Nick Gorham
Easysoft Ltd