INF: SQL Server 6.0 ODBC Driver Changes Tempdb UsageID: Q135532
|
The usage of tempdb is affected by two changes in behavior when you upgrade from the Microsoft ODBC SQL Server driver that shipped with SQL Server version 4.21a to the one that ships with SQL Server version 6.0 or 6.5.
You can configure the Microsoft SQL Server driver to generate stored
procedures to support the ODBC SQLPrepare statement. One of the problems
with older Microsoft ODBC SQL Server drivers was that if an ODBC client's
connection with SQL Server was broken for some reason, the ODBC driver
would not get a chance to clean-up these procedures.
One change made in SQL Server version 6.0 is the introduction of temporary
stored procedures, which are now used by the ODBC driver when it creates
its procedures for prepared statements. These temporary stored procedures
are automatically cleaned-up by SQL Server if a client connection is broken
before the application finishes processing. This eliminates the problem
with orphaned stored procedures seen with earlier SQL Server versions. The
temporary stored procedures are located in tempdb, while the regular stored
procedures used in previous SQL Servers were located in the user database,
so you will see a change in the distribution of these stored procedures.
The current Microsoft ODBC drivers do not generate these temporary stored
procedures when they are also using server cursors. The drivers do not use
server cursors when the following statement options are set:
SQL_CONCURRENCY = SQL_CONCUR_READ_ONLY
SQL_CURSOR_TYPE = SQL_CURSOR_FORWARD_ONLY
SQL_ROWSET_SIZE = 1
#define SQL_UP_OFF 0L
#define SQL_UP_ON 1L
#defineSQL_UP_ON_DROP 2L
#define SQL_UP_DEFAULT SQL_UP_ON
Additional query words: sql6
Keywords : kbinterop kbprg SSrvProg
Version : 2.50.0121 4.21a 6.0 6.5
Platform : WINDOWS
Issue type :
Last Reviewed: April 15, 1999