Microsoft Knowledge Base Article
This article contents is Microsoft Copyrighted material.
©2005-©2007 Microsoft Corporation. All rights reserved.
Terms
of Use |
Trademarks
Article ID: 184775 - Last Review: March 14, 2005 - Revision: 3.1
FIX: Oracle ODBC Driver Creates Temporary Files on Root Drive
This article was previously published under Q184775
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.
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.
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:
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"
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
| kbbug kbdriver kbfix kbodbc250fix kboracle KB184775 |
Retired KB Content DisclaimerThis article was written about products for which Microsoft no longer offers support. Therefore, this article is offered "as is" and will no longer be updated.
Community Feedback System
Very often, it takes hours to solve a problem. Very often, you've looked high
and low, and have tried a lot of solutions. When you finally found it, chances
are, it was because someone else helped you. Here's your chance to give back.
Use our community feedback tool to let others know what worked for you and what
didn't.
Please also understand that the community feedback system is not warranted to be
correct, it's simply a system that we've built to let people try and help each
other. If something in a feedback response doesn't make sense to you, or you're
not comfortable making changes that the feedback talks about (like registry
edits), please consult a professional.
Thank you for using kbAlertz.com Feedback System.
-- Scott Cate