BUG: SQLOLEDB Resends Prepared Commands with Client CursorsID: Q238355
|
When using the SQLOLEDB provider with client side cursors and prepared statements, the performance is slower than with SQL Server 6.5 and ODBC. When tracing the SQL statements sent by the client application with SQL Server Profiler, a sequence of statements similar to the following can be observed:
SQL Server 7.0
sp_prepare @P1 output, N'@P1 varchar(40)', N'select au_fname,au_lname from pubs..authors where au_lname like @P1', 1 select @P1 sp_unprepare 1 sp_executesql N'select au_fname,au_lname from pubs..authors where au_lname like @P1', N'@P1 nvarchar(2)', N'M%'
SQL Server 6.5
create proc #oledbsa1(@P1 varchar(40)) as select au_fname,au_lname from pubs..authors where au_lname like @P1 select au_fname,au_lname from pubs..authors where au_lname like 'M%'
As shown in the SQL trace, under these circumstances the SQLOLEDB provider first prepares the statement but sends it again to get the rows for the client side cursor.
A supported fix that corrects this problem is now available from Microsoft, but
it has not been fully regression tested and should be applied only to systems
experiencing this specific problem. If you are not severely affected by this
specific problem, Microsoft recommends that you wait for the next SQL Server service pack
that contains this fix.
To resolve this problem immediately, contact Microsoft Product Support Services
to obtain the fix. For a complete list of Microsoft Product Support Services
phone numbers and information on support costs, please go to the following
address on the World Wide Web:
http://www.microsoft.com/support/supportnet/overview/overview.aspThe English version of this fix should have the following file attributes or later:
Date Time Version Size File name Platform
-----------------------------------------------------------------
06/25/99 16:04 07.01.0705 540,944 Sqloledb.dll Intel
06/25/99 16:04 07.01.0705 1,044,240 Sqloledb.dll Alpha
NOTE: Due to file dependencies, the most recent hotfix or feature that contains the above files may also contain additional files.Q154871 Determining If You Are Eligible for No-Charge Technical Support
To work around this problem, try either of the following:
Microsoft has confirmed this to be a problem in SQL Server version 7.0.
Additional query words: OLE DB
Keywords : SSrvProg kbbug7.00 kbSQLServ700bug
Version : WINDOWS:2.1; winnt:7.0
Platform : WINDOWS winnt
Issue type : kbbug
Last Reviewed: July 30, 1999