---------------------------------------------------------
Microsoft(R) OLE DB Provider for Oracle, version 2.0 Readme File
---------------------------------------------------------

(c) 1998 Microsoft Corporation. All rights reserved.

This document provides late-breaking or other information that supplements the Microsoft OLE DB Provider for Oracle documentation.

--------
CONTENTS
--------

1. PRODUCT DESCRIPTION

2. SYSTEM REQUIREMENTS

3. TECHNICAL NOTES

4. KNOWN LIMITATIONS

----------------------
1. PRODUCT DESCRIPTION
----------------------
This provider enables OLE DB consumers to access Oracle data sources.
It is new with Microsoft Data Access 2.0. (The provider's version number matches the Data Access version number.)

----------------------
2. SYSTEM REQUIREMENTS
----------------------
The Microsoft OLE DB Provider for Oracle provides access to Oracle databases (version 7.3 or version 8) using the Oracle Client Software, version 7.3.3.4.0 or greater, or version 8.0.4.1.1c. The client software must be installed on the client machine. This provider has been tested primarily with Oracle Client Software version 7.3.3.4.0 and SQL*Net version 2.3.3.0.4. When upgrading an Oracle client, it is important both to install the client upgrade and to apply the "Required Supporting Files" that ships with the Server patch. 

For more information on Oracle products, refer to your Oracle documentation set.

------------------
3. TECHNICAL NOTES
------------------
a) The Microsoft OLE DB Provider for Oracle data sources does not directly support scrolling, nor does it support updating through the rowset using IRowsetChange. If the provider is instantiated using IDataInitialize or invoked through ADO, Service Components will provide updating and scrolling functionality if requested by the application. In addition, the provider does support executing SQL update commands.

b) In several cases, numeric data will be returned as DBTYPE_VARNUMERIC, a new data type in OLE DB 2.0. The most notable situations are for columns defined as FLOAT, NUMBER (without precision or scale), computed numeric columns, or any situation where the scale either is negative or exceeds 38 digits.

c) IDBSchemaRowset::GetRowset performs case-sensitive selection only if you quote the value passed into IDBSchemaRowset.  

d) The Transaction Unit Of Work as reported by GetTransaction will always be NULL. For example, get a transaction from a session, and call GetTransaction on it. The XACTUOW from the XACTTRANSINFO will always be NULL.

--------------------
4. KNOWN LIMITATIONS
--------------------
a) This provider doesn't support the {resultset} escape implemented by the Microsoft ODBC Driver for Oracle.

b) OLE DB 2.0 includes a new flag in IConvertType::CanConvert, which is DBCONVERTFLAGS_FROMVARIANT. This flag is supported by the provider; however, it has no effect on the return value from CanConvert at this time.  

c) In Oracle version 8, the maximum size of a VARCHAR column has increased from 2000 to 4000 bytes. The Oracle 7.3.x client software has no way to bind a parameter value larger 2000 bytes. Therefore, if you create a table with a VARCHAR column of larger than 2000 bytes, you will be unable to perform parameterized inserts, updates, deletes, and queries against it with data that exceeds the 2000-byte limit of the client software. Because both the ODBC Driver for Oracle and the OLE DB Provider for Oracle use parameterized inserts, updates, deletes, and queries, they will report ORA-01026 errors in this case. Data that is within the limits enforced by the Oracle client software will work.
The workaround is to update your client software to Oracle 8, (8.0.4.1.1c or higher).

d)  If using the Oracle provider with MTS to enlist in global transactions, the file MTXOCI.DLL is required. This file is installed with Microsoft Visual Studio(TM) 98. However, installing Back Office(R) and then uninstalling Back Office will remove MTXOCI.DLL from your system. You must replace MTXOCI.DLL before using MTS with the Oracle Provider.

