| Oracle® Data Provider for .NET Developer's Guide 10g Release 2 (10.2) Part Number B14307-01  | 
  | 
  | 
View PDF | 
ODP.NET types represent Oracle native datatypes and PL/SQL datatypes as a structure or as a class. ODP.NET type structures follow value semantics, while ODP.NET type classes follow reference semantics. ODP.NET types provide safer and more efficient ways of obtaining Oracle native data and PL/SQL datatypes in a .NET application than .NET types. For example, an OracleDecimal structure holds up to 38 precisions, while a .NET Decimal holds up to only 28 precisions.
Table 3-8 lists datatypes supported by ODP.NET and their corresponding ODP.NET types: datatypes in the first column refer to both Oracle native datatypes and PL/SQL datatypes of that name. Those datatypes that exist only in PL/SQL are indicated by (PL/SQL only) after the datatype name. The entries for the PL/SQL datatypes also represent the subtypes of the datatypes, if any. The third column lists the .NET Framework datatype that corresponds to the Value property of each ODP.NET type.
Table 3-8 Value Property Type of ODP.NET Type
| Oracle Native Datatype or PL/SQL Datatype | ODP.NET Type | .NET Framework Datatypes | 
|---|---|---|
BFILE | 
OracleBFile class | 
System.Byte[] | 
BINARY_DOUBLE | 
OracleDecimal structure | 
System.Decimal | 
BINARY_FLOAT | 
OracleDecimal structure | 
System.Decimal | 
BINARY_INTEGER (PL/SQL only) | 
OracleDecimal structure | 
System.Decimal | 
BLOB | 
OracleBlob class | 
System.Byte[] | 
CHAR | 
OracleString structure | 
System.String | 
CLOB | 
OracleClob class | 
System.String | 
DATE | 
OracleDate structure | 
System.DateTime | 
INTERVAL DAY TO SECOND | 
OracleIntervalDS structure | 
System.TimeSpan | 
INTERVAL YEAR TO MONTH | 
OracleIntervalYM structure | 
System.Int64 | 
LONG | 
OracleString structure | 
System.String | 
LONG RAW | 
OracleBinary structure | 
System.Byte[] | 
NCHAR | 
OracleString structure | 
System.String | 
NCLOB | 
OracleClob class | 
System.String | 
NUMBER | 
OracleDecimal structure | 
System.Decimal | 
NVARCHAR2 | 
OracleString structure | 
System.String | 
PLS_INTEGER (PL/SQL only) | 
OracleDecimal Structure | 
System.Decimal | 
RAW | 
OracleBinary structure | 
System.Byte[] | 
REF CURSOR (PL/SQL only) | 
OracleRefCursor class | 
Not Applicable | 
ROWID | 
OracleString structure | 
System.String | 
TIMESTAMP | 
OracleTimeStamp structure | 
System.DateTime | 
TIMESTAMP WITH LOCAL TIME ZONE | 
OracleTimeStampLTZ structure | 
System.DateTime | 
TIMESTAMP WITH TIME ZONE | 
OracleTimeStampTZ structure | 
System.DateTime | 
UROWID | 
OracleString structure | 
System.String | 
VARCHAR2 | 
OracleString structure | 
System.String | 
XMLType | 
OracleXmlType class | 
System.String |