Сопоставления типов данных Oracle

Обновлен: November 2007

В следующей таблице представлены типы данных Oracle и их сопоставления объекту OracleDataReader.

Тип данных Oracle

Тип данных .NET Framework, возвращаемый OracleDataReader.GetValue

Тип данных OracleClient, который возвращает OracleDataReader.GetOracleValue

Примечания

BFILE

Byte[]

OracleBFile

BLOB

Byte[]

OracleLob

CHAR

String

OracleString

CLOB

String

OracleLob

DATE

DateTime

OracleDateTime

FLOAT

Decimal

OracleNumber

Этот тип данных является псевдонимом для типа данных NUMBER и разработан так, что OracleDataReader возвращает System.Decimal или OracleNumber вместо значения с плавающей запятой. Использование типа данных .NET Framework может вызвать переполнение.

INTEGER

Decimal

OracleNumber

Этот тип данных является псевдонимом для типа данных NUMBER(38) и разработан так, что OracleDataReader возвращает System.Decimal или OracleNumber вместо целого значения. Использование типа данных .NET Framework может вызвать переполнение.

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

Использование типа данных .NET Framework может вызвать переполнение.

NVARCHAR2

String

OracleString

RAW

Byte[]

OracleBinary

REF CURSOR

Тип данных Oracle REF CURSOR не поддерживается объектом OracleDataReader.

ROWID

String

OracleString

TIMESTAMP

DateTime

OracleDateTime

TIMESTAMP WITH LOCAL TIME ZONE

DateTime

OracleDateTime

TIMESTAMP WITH TIME ZONE

DateTime

OracleDateTime

UNSIGNED INTEGER

Number

OracleNumber

Этот тип данных является псевдонимом для типа данных NUMBER(38) и разработан так, что OracleDataReader возвращает System.Decimal или OracleNumber вместо целого значения без знака. Использование типа данных .NET Framework может вызвать переполнение.

VARCHAR2

String

OracleString

В следующей таблице представлены типы данных Oracle и типы данных .NET Framework (System.Data.DbType и OracleType), которые используются при привязке их как параметров.

Тип данных Oracle

Перечисление DbType, которое привязывается как параметр

Перечисление OracleType, которое привязывается как параметр

Примечания

BFILE

BFile

Oracle допускает привязку только BFILE как параметр BFILE. Поставщик данных .NET для Oracle автоматически не конструирует параметр при попытке привязать значение не-BFILE, например byte[] или OracleBinary.

BLOB

Blob

Oracle допускает привязку только BLOB как параметр BLOB. Поставщик данных .NET для Oracle автоматически не конструирует параметр при попытке привязать значение не-BLOB, например byte[] или OracleBinary.

CHAR

AnsiStringFixedLength

Char

CLOB

Clob

Oracle допускает привязку только CLOB как параметр CLOB. Поставщик данных .NET для Oracle автоматически не конструирует параметр при попытке привязать значение не-CLOB, например System.String или OracleString.

DATE

DateTime

DateTime

FLOAT

Single, Double, Decimal

Float, Double, Number

Size определяет System.Data.DBType и OracleType.

INTEGER

SByte, Int16, Int32, Int64, Decimal

SByte, Int16, Int32, Number

Size определяет System.Data.DBType и OracleType.

INTERVAL YEAR TO MONTH

Int32

IntervalYearToMonth

OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.

INTERVAL DAY TO SECOND

Object

IntervalDayToSecond

OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.

LONG

AnsiString

LongVarChar

LONG RAW

Binary

LongRaw

NCHAR

StringFixedLength

NChar

NCLOB

NClob

Oracle допускает привязку только NCLOB как параметр NCLOB. Поставщик данных .NET для Oracle автоматически не конструирует параметр при попытке привязать значение не-NCLOB, например System.String или OracleString.

NUMBER

VarNumeric

Number

NVARCHAR2

String

NVarChar

RAW

Binary

Raw

REF CURSOR

Cursor

Дополнительные сведения см. в разделе Курсоры REF CURSOR в Oracle.

ROWID

AnsiString

Rowid

TIMESTAMP

DateTime

Timestamp

OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.

TIMESTAMP WITH LOCAL TIME ZONE

DateTime

TimestampLocal

OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.

TIMESTAMP WITH TIME ZONE

DateTime

TimestampWithTz

OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.

UNSIGNED INTEGER

Byte, UInt16, UInt32, UInt64, Decimal

Byte, UInt16, Uint32, Number

Size определяет System.Data.DBType и OracleType.

VARCHAR2

AnsiString

VarChar

Значения InputOutput, Output и ReturnValue ParameterDirection, используемые свойством Value объекта OracleParameter, являются типами данных .NET Framework, если входное значение является типом данных Oracle (например, OracleNumber или OracleString). Это не применяется к типам данных REF CURSOR, BFILE или LOB.

См. также

Другие ресурсы

Oracle и ADO.NET