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

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

Тип данных Oracle Тип данных .NET Framework, возвращаемый OracleDataReader.GetValue Тип данных OracleClient, возвращаемый OracleDataReader.GetOracleValue Замечания
BFILE Байт[] OracleBFile
BLOB Байт[] OracleLob
УГОЛЬ Струна OracleString
CLOB Струна OracleLob
ДАТА DateTime OracleDateTime
Флоат Десятичное число OracleNumber Этот тип данных является псевдонимом для типа NUMBER, и разработан для того, чтобы OracleDataReader возвращал System.Decimal или OracleNumber вместо значения с плавающей точкой. Использование типа данных .NET Framework может вызвать переполнение.
ЦЕЛОЕ ЧИСЛО Десятичное число OracleNumber Этот тип данных является псевдонимом для типа данных NUMBER(38) и разработан таким образом, чтобы OracleDataReader возвращать system.Decimal или OracleNumber вместо целочисленного значения. Использование типа данных .NET Framework может вызвать переполнение.
ИНТЕРВАЛ ГОДА К МЕСЯЦУ Инт32 OracleMonthSpan
ИНТЕРВАЛ ДНЯ ДО СЕКУНДЫ Интервал времени OracleTimeSpan
ДЛИННЫЙ Струна OracleString
LONG RAW Байт[] OracleBinary
NCHAR Струна OracleString
NCLOB Струна OracleLob
ЧИСЛО Десятичное число OracleNumber Использование типа данных .NET Framework может вызвать переполнение.
NVARCHAR2 Струна OracleString
RAW Байт[] OracleBinary
REF CURSOR Тип данных Oracle REF CURSOR не поддерживается OracleDataReader объектом.
ROWID Струна OracleString
TIMESTAMP DateTime OracleDateTime
МЕТКА ВРЕМЕНИ С ЛОКАЛЬНОЙ ЧАСОВОЙ ЗОНОЙ DateTime OracleDateTime
МЕТКА ВРЕМЕНИ С ЧАСОВЫМ ПОЯСОМ DateTime OracleDateTime
ЦЕЛОЕ ЧИСЛО БЕЗ ЗНАКА Число OracleNumber Этот тип данных является псевдонимом для типа данных NUMBER(38) и предназначен для того, чтобы OracleDataReader возвращать System.Decimal или OracleNumber вместо значения беззнакового целого числа. Использование типа данных .NET Framework может вызвать переполнение.
VARCHAR2 Струна 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.
УГОЛЬ AnsiStringFixedLength Уголь
CLOB Clob Oracle разрешает привязку CLOB только как параметра CLOB. Поставщик данных .NET для Oracle не создает это автоматически, если вы пытаетесь привязать значение, отличное от CLOB, например, System.String или OracleString.
ДАТА DateTime DateTime
Флоат Одинарный, двойной, десятичный Число с плавающей точкой, Двойной, Число SizeФункция определяет тип System.Data.DBType и OracleType.
ЦЕЛОЕ ЧИСЛО SByte, Int16, Int32, Int64, Decimal SByte, Int16, Int32, Number SizeФункция определяет тип System.Data.DBType и OracleType.
ИНТЕРВАЛ ГОДА К МЕСЯЦУ Инт32 IntervalYearToMonth OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.
ИНТЕРВАЛ ДНЯ ДО СЕКУНДЫ Объект Интервал от дней до секунд OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.
ДЛИННЫЙ AnsiString LongVarChar
LONG RAW Бинарный LongRaw
NCHAR StringFixedLength NChar
NCLOB NClob Oracle разрешает привязку NCLOB только как параметра NCLOB. Поставщик данных .NET для Oracle не создает его автоматически, если вы пытаетесь привязать значение, не являющееся NCLOB, например, System.String или OracleString.
ЧИСЛО VarNumeric Число
NVARCHAR2 Струна NVarChar
RAW Бинарный Сырой
REF CURSOR Курсор Дополнительные сведения см. в статье Oracle REF CURSORs.
ROWID AnsiString Rowid
TIMESTAMP DateTime Метка времени OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.
МЕТКА ВРЕМЕНИ С ЛОКАЛЬНОЙ ЧАСОВОЙ ЗОНОЙ DateTime TimestampLocal OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.
МЕТКА ВРЕМЕНИ С ЧАСОВЫМ ПОЯСОМ DateTime TimestampWithTz OracleType доступен только при использование как клиентского, так и серверного программного обеспечения Oracle 9i.
ЦЕЛОЕ ЧИСЛО БЕЗ ЗНАКА Байт, UInt16, UInt32, UInt64, Decimal Байт, UInt16, Uint32, Число SizeФункция определяет тип System.Data.DBType и OracleType.
VARCHAR2 AnsiString VarChar

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

См. также