Сопоставления типов данных Oracle
В следующей таблице представлены типы данных Oracle и их сопоставления объекту OracleDataReader.
Тип данных Oracle |
Тип данных .NET Framework, возвращаемый OracleDataReader.GetValue |
Тип данных OracleClient, возвращаемый OracleDataReader.GetOracleValue |
Примечания |
---|---|---|---|
BFILE |
Byte[] |
|
|
BLOB |
Byte[] |
|
|
CHAR |
String |
|
|
CLOB |
String |
|
|
DATE |
DateTime |
|
|
FLOAT |
Decimal |
Этот тип данных является псевдонимом для типа данных NUMBER и разработан так, что OracleDataReader возвращает System.Decimal или OracleNumber вместо значения с плавающей запятой. Использование типа данных .NET Framework может вызвать переполнение. |
|
INTEGER |
Decimal |
Этот тип данных является псевдонимом для типа данных NUMBER(38) и разработан так, что OracleDataReader возвращает System.Decimal или OracleNumber вместо целого значения. Использование типа данных .NET Framework может вызвать переполнение. |
|
INTERVAL YEAR TO MONTH |
Int32 |
|
|
INTERVAL DAY TO SECOND |
TimeSpan |
|
|
LONG |
String |
|
|
LONG RAW |
Byte[] |
|
|
NCHAR |
String |
|
|
NCLOB |
String |
|
|
NUMBER |
Decimal |
Использование типа данных .NET Framework может вызвать переполнение. |
|
NVARCHAR2 |
String |
|
|
RAW |
Byte[] |
|
|
REF CURSOR |
|
|
Тип данных Oracle REF CURSOR не поддерживается объектом OracleDataReader. |
ROWID |
String |
|
|
TIMESTAMP |
DateTime |
|
|
TIMESTAMP WITH LOCAL TIME ZONE |
DateTime |
|
|
TIMESTAMP WITH TIME ZONE |
DateTime |
|
|
UNSIGNED INTEGER |
Number |
Этот тип данных является псевдонимом для типа данных NUMBER(38) и разработан так, что OracleDataReader возвращает System.Decimal или OracleNumber вместо целого числа без знака. Использование типа данных .NET Framework может вызвать переполнение. |
|
VARCHAR2 |
String |
|
В следующей таблице представлены типы данных 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.