Microsoft KB Archive/184775

= FIX: Oracle ODBC Driver Creates Temporary Files on Root Drive =

Article ID: 184775

Article Last Modified on 3/14/2005

-

APPLIES TO


 * Microsoft ODBC Driver for Oracle (Build 2.06325) 1.0
 * Microsoft Open Database Connectivity 2.0
 * Microsoft Open Database Connectivity 2.0
 * Microsoft Open Database Connectivity 2.0
 * Microsoft Data Access Components 1.5

-



This article was previously published under Q184775



SYMPTOMS
When using the Microsoft Oracle ODBC driver (Msorcl32.dll) provided with the Microsoft Data Access Components (MDAC) 1.5x and more than 64K of data is returned to the client computer in a scrollable or keyset driven recordset, temporary files may be created in the root of the primary drive.

This causes problems on secured computers where the users are not permitted to write to the root of the primary drive.



RESOLUTION
There are currently no configuration options available to change the location of these temporary files. However, below are some workarounds that can help alleviate this problem.
 * Change the application to use the ODBC Cursor Library. This also creates temporary files, but they will be located in the default working directory of the application.
 * Use a forward-only cursor that will not buffer records.
 * Return small recordsets that will not exceed the driver's 64K buffer.
 * Grant sufficient permissions to the root of the primary drive to allow the creation of temporary files.

The latest version of the Microsoft Oracle ODBC driver fixes this problem by creating the temporary files in the subdirectory of the application.



STATUS
This bug has been fixed in the 2.573.2927 version of the Microsoft Oracle ODBC driver available in Visual Studio 6.0 and Microsoft Data Access Components version 2.0 and later. The MDAC files can be downloaded from the following Web site:

http://msdn.microsoft.com/dataaccess



MORE INFORMATION
When Microsoft's Oracle ODBC driver exceeds its internal storage buffer size of 64K, a temporary file is created in the root of the primary drive to hold the cached records. If the user does not have sufficient permissions to create files in the root of the primary drive, a General Error is returned to the client.

These file names typically begin with the letter "t" followed by a number and another letter, such as "t6a", "t5b.3" and "t4i.2".

The following error information may be returned to the client during a Fetch operation:

SqlState S1000, ErrorMsg = "[Microsoft][ODBC driver for Oracle] General error"

Keywords: kbbug kbfix kboracle kbdriver kbodbc250fix KB184775

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.