Compartir a través de


Asignar tipos de datos de Oracle

Actualización: November 2007

En la siguiente tabla se enumeran los tipos de datos de Oracle y sus asignaciones al OracleDataReader.

Tipo de datos de Oracle

Tipo de datos de .NET Framework devuelto por OracleDataReader.GetValue

Tipo de datos OracleClient devuelto por OracleDataReader.GetOracleValue

Comentarios

BFILE

Byte[]

OracleBFile

 

BLOB

Byte[]

OracleLob

 

CHAR

String

OracleString

 

CLOB

String

OracleLob

 

DATE

DateTime

OracleDateTime

 

FLOAT

Decimal

OracleNumber

Este tipo de datos es un alias del tipo de datos NUMBER, y se ha diseñado para que OracleDataReader devuelva System.Decimal o OracleNumber en lugar de un valor de punto flotante. El uso del tipo de datos de .NET Framework puede ocasionar un desbordamiento.

INTEGER

Decimal

OracleNumber

Este tipo de datos es un alias del tipo de datos NUMBER (38), y se ha diseñado para que OracleDataReader devuelva System.Decimal o OracleNumber en lugar de un valor entero. El uso del tipo de datos de .NET Framework puede ocasionar un desbordamiento.

INTERVAL YEAR TO MONTH

Int32

OracleMonthSpan

 

INTERVAL DAY TO SECOND

Timespan

OracleTimeSpan

 

LONG

String

OracleString

 

LONG RAW

Byte[]

OracleBinary

 

NCHAR

String

OracleString

 

NCLOB

String

OracleLob

 

NUMBER

Decimal

OracleNumber

El uso del tipo de datos de .NET Framework puede ocasionar un desbordamiento.

NVARCHAR2

String

OracleString

 

RAW

Byte[]

OracleBinary

 

REF CURSOR

 

 

El objeto OracleDataReader no admite el tipo de datos REF CURSOR de Oracle.

ROWID

String

OracleString

 

TIMESTAMP

DateTime

OracleDateTime

 

TIMESTAMP WITH LOCAL TIME ZONE

DateTime

OracleDateTime

 

TIMESTAMP WITH TIME ZONE

DateTime

OracleDateTime

 

UNSIGNED INTEGER

Número

OracleNumber

Este tipo de datos es un alias del tipo de datos NUMBER (38), y se ha diseñado para que OracleDataReader devuelva System.Decimal o OracleNumber en lugar de un valor entero sin signo. El uso del tipo de datos de .NET Framework puede ocasionar un desbordamiento.

VARCHAR2

String

OracleString

 

En la siguiente tabla se enumeran los tipos de datos de Oracle y los tipos de datos de .NET Framework (System.Data.DbType y OracleType) que se deben utilizar cuando se enlacen como parámetros.

Tipo de datos de Oracle

Enumeración DbType para enlazar como un parámetro

Enumeración OracleType para enlazar como un parámetro

Comentarios

BFILE

 

BFile

Oracle sólo permite enlazar un BFILE como un parámetro BFILE. El proveedor de datos de .NET para Oracle no construye uno automáticamente si intenta enlazar un valor que no es BFILE, como byte[] o OracleBinary.

BLOB

 

Blob

Oracle sólo permite enlazar un BLOB como un parámetro BLOB. El proveedor de datos .NET para Oracle no construye uno automáticamente si intenta enlazar un valor que no es BLOB, como byte[] o OracleBinary.

CHAR

AnsiStringFixedLength

Char

 

CLOB

 

Clob

Oracle sólo permite enlazar un CLOB como un parámetro CLOB. El proveedor de datos de .NET para Oracle no construye uno automáticamente si intenta enlazar un valor que no es CLOB, como System.String o OracleString.

DATE

DateTime

DateTime

 

FLOAT

Single, Double, Decimal

Float, Double, Number

Size determina System.Data.DBType y OracleType.

INTEGER

SByte, Int16, Int32, Int64, Decimal

SByte, Int16, Int32, Number

Size determina System.Data.DBType y OracleType.

INTERVAL YEAR TO MONTH

Int32

IntervalYearToMonth

OracleType sólo está disponible cuando se utiliza el software de cliente y servidor de Oracle 9i.

INTERVAL DAY TO SECOND

Objeto

IntervalDayToSecond

OracleType sólo está disponible cuando se utiliza el software de cliente y servidor de Oracle 9i.

LONG

AnsiString

LongVarChar

 

LONG RAW

Binary

LongRaw

 

NCHAR

StringFixedLength

NChar

 

NCLOB

 

NClob

Oracle sólo permite enlazar un NCLOB como un parámetro NCLOB. El proveedor de datos de .NET para Oracle con construye uno automáticamente si intenta enlazar un valor que no es NCLOB, como System.String o OracleString.

NUMBER

VarNumeric

Número

 

NVARCHAR2

String

NVarChar

 

RAW

Binary

Raw

 

REF CURSOR

 

Cursor

Para obtener más información, vea Cursores REF CURSOR de Oracle.

ROWID

AnsiString

Rowid

 

TIMESTAMP

DateTime

Timestamp

OracleType sólo está disponible cuando se utiliza el software de cliente y servidor de Oracle 9i.

TIMESTAMP WITH LOCAL TIME ZONE

DateTime

TimestampLocal

OracleType sólo está disponible cuando se utiliza el software de cliente y servidor de Oracle 9i.

TIMESTAMP WITH TIME ZONE

DateTime

TimestampWithTz

OracleType sólo está disponible cuando se utiliza el software de cliente y servidor de Oracle 9i.

UNSIGNED INTEGER

Byte, UInt16, UInt32, UInt64, Decimal

Byte, UInt16, Uint32, Number

Size determina System.Data.DBType y OracleType.

VARCHAR2

AnsiString

VarChar

 

Los valores InputOutput, Output y ReturnValue ParameterDirection utilizados por la propiedad Value del objeto OracleParameter son tipos de datos de .NET Framework, a menos que el valor de entrada sea un tipo de dato de Oracle (por ejemplo, OracleNumber o OracleString).Esto no se aplica a los tipos de datos REF CURSOR, BFILE o LOB.

Vea también

Otros recursos

Oracle y ADO.NET