Mappages du type de données Oracle

La table suivante répertorie les types de données Oracle et leurs mappages sur le OracleDataReader.

Type de données Oracle

Type de données .NET Framework retourné par OracleDataReader.GetValue

Type de données OracleClient retourné par OracleDataReader.GetOracleValue

Notes

BFILE

Byte[]

OracleBFile

 

BLOB

Byte[]

OracleLob

 

CHAR

String

OracleString

 

CLOB

String

OracleLob

 

DATE

DateTime

OracleDateTime

 

FLOAT

Decimal

OracleNumber

Ce type de données est un alias du type de données NUMBER et est conçu de façon à ce que le OracleDataReader retourne un System.Decimal ou un OracleNumber au lieu d'une valeur en virgule flottante. L'utilisation du type de données .NET Framework peut entraîner un dépassement.

INTEGER

Decimal

OracleNumber

Ce type de données est un alias du type de données NUMBER(38) et est conçu de façon à ce que le OracleDataReader retourne un System.Decimal ou un OracleNumber au lieu d'une valeur entière. L'utilisation du type de données .NET Framework peut entraîner un dépassement.

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

L'utilisation du type de données .NET Framework peut entraîner un dépassement.

NVARCHAR2

String

OracleString

 

RAW

Byte[]

OracleBinary

 

REF CURSOR

 

 

La type de données Oracle REF CURSOR n'est pas pris en charge par l'objet OracleDataReader.

ROWID

String

OracleString

 

TIMESTAMP

DateTime

OracleDateTime

 

TIMESTAMP WITH LOCAL TIME ZONE

DateTime

OracleDateTime

 

TIMESTAMP WITH TIME ZONE

DateTime

OracleDateTime

 

UNSIGNED INTEGER

Number

OracleNumber

Ce type de données est un alias du type de données NUMBER(38) et est conçu de façon à ce que le OracleDataReader retourne un System.Decimal ou un OracleNumber au lieu d'une valeur entière non signée. L'utilisation du type de données .NET Framework peut entraîner un dépassement.

VARCHAR2

String

OracleString

 

La table suivante répertorie les types de données Oracle et les types de données .NET Framework (System.Data.DbType et OracleType) à utiliser pour les lier comme paramètres.

Type de données Oracle

Énumération DbType à lier comme paramètre

Énumération OracleType à lier comme paramètre

Remarques

BFILE

 

BFile

Oracle n'autorise la liaison d'un BFILE que comme paramètre BFILE. Le fournisseur de données .NET pour Oracle n'en construit pas automatiquement un pour vous si vous tentez de lier une valeur non BFILE, telle que byte[] ou OracleBinary.

BLOB

 

Blob

Oracle n'autorise la liaison d'un BLOB que comme paramètre BLOB. Le fournisseur de données .NET pour Oracle n'en construit pas automatiquement un pour vous si vous tentez de lier une valeur non BLOB, telle que byte[] ou OracleBinary.

CHAR

AnsiStringFixedLength

Char

 

CLOB

 

Clob

Oracle n'autorise la liaison d'un CLOB que comme paramètre CLOB. Le fournisseur de données .NET pour Oracle n'en construit pas automatiquement un pour vous si vous tentez de lier une valeur non CLOB, telle que System.String ou OracleString.

DATE

DateTime

DateTime

 

FLOAT

Simple, Double, Decimal

Float, Double, Number

Size détermine le System.Data.DBType et le OracleType.

INTEGER

SByte, Int16, Int32, Int64, Decimal

SByte, Int16, Int32, Number

Size détermine le System.Data.DBType et le OracleType.

INTERVAL YEAR TO MONTH

Int32

IntervalYearToMonth

OracleType est uniquement disponible lors de l'utilisation combinée du client Oracle 9i et du logiciel serveur.

INTERVAL DAY TO SECOND

Object

IntervalDayToSecond

OracleType est uniquement disponible lors de l'utilisation combinée du client Oracle 9i et du logiciel serveur.

LONG

AnsiString

LongVarChar

 

LONG RAW

Binary

LongRaw

 

NCHAR

StringFixedLength

NChar

 

NCLOB

 

NClob

Oracle n'autorise la liaison d'un NCLOB que comme paramètre NCLOB. Le fournisseur de données .NET pour Oracle n'en construit pas automatiquement un pour vous si vous tentez de lier une valeur non NCLOB, telle que System.String ou OracleString.

NUMBER

VarNumeric

Number

 

NVARCHAR2

String

NVarChar

 

RAW

Binary

Raw

 

REF CURSOR

 

Cursor

Pour plus d'informations, voir REF CURSOR Oracle.

ROWID

AnsiString

Rowid

 

TIMESTAMP

DateTime

Horodateur

OracleType est uniquement disponible lors de l'utilisation combinée du client Oracle 9i et du logiciel serveur.

TIMESTAMP WITH LOCAL TIME ZONE

DateTime

TimestampLocal

OracleType est uniquement disponible lors de l'utilisation combinée du client Oracle 9i et du logiciel serveur.

TIMESTAMP WITH TIME ZONE

DateTime

TimestampWithTz

OracleType est uniquement disponible lors de l'utilisation combinée du client Oracle 9i et du logiciel serveur.

UNSIGNED INTEGER

Byte, UInt16, UInt32, UInt64, Decimal

Byte, UInt16, Uint32, Number

Size détermine le System.Data.DBType et le OracleType.

VARCHAR2

AnsiString

VarChar

 

Les valeurs InputOutput, Output et ReturnValue ParameterDirection utilisées par la propriété Value de l'objet OracleParameter sont des types de données .NET Framework, à moins que la valeur d'entrée ne soit un type de données Oracle (par exemple, OracleNumber ou OracleString). Cela ne s'applique pas aux types de données REF CURSOR, BFILE ou LOB.

Voir aussi

Autres ressources

Oracle et ADO.NET