Oracle 数据类型映射

下表列出 Oracle 数据类型及其与 OracleDataReader 的映射。

Oracle 数据类型

由 OracleDataReader.GetValue 返回的 .NET Framework 数据类型

由 OracleDataReader.GetOracleValue 返回的 OracleClient 数据类型

备注

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

OracleDataReader 对象不支持 Oracle REF CURSOR 数据类型。

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 参数。 如果您尝试绑定一个非 BFILE 值(如 byte[] 或 OracleBinary),适用于 Oracle 的 .NET 数据提供程序并不会自动为您构造这样的值。

BLOB

Blob

Oracle 只允许将 BLOB 绑定为 BLOB 参数。 如果您尝试绑定一个非 BLOB 值(如 byte[] 或 OracleBinary),适用于 Oracle 的 .NET 数据提供程序并不会自动为您构造这样的值。

CHAR

AnsiStringFixedLength

Char

CLOB

Clob

Oracle 只允许将 CLOB 绑定为 CLOB 参数。 如果您尝试绑定一个非 CLOB 值(如 System.String 或 OracleString),适用于 Oracle 的 .NET 数据提供程序并不会自动为您构造这样的值。

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

只有在同时使用 Oracle 9i 客户端和服务器软件时,OracleType 才可用。

INTERVAL DAY TO SECOND

Object

IntervalDayToSecond

只有在同时使用 Oracle 9i 客户端和服务器软件时,OracleType 才可用。

LONG

AnsiString

LongVarChar

LONG RAW

Binary

LongRaw

NCHAR

StringFixedLength

NChar

NCLOB

NClob

Oracle 只允许将 NCLOB 绑定为 NCLOB 参数。 如果您尝试绑定一个非 NCLOB 值(如System.String 或 OracleString),适用于 Oracle 的 NET 数据提供程序并不会自动为您构造这样的值。

NUMBER

VarNumeric

Number

NVARCHAR2

String

NVarChar

RAW

Binary

Raw

REF CURSOR

Cursor

有关更多信息,请参见Oracle REF CURSOR

ROWID

AnsiString

Rowid

TIMESTAMP

DateTime

Timestamp

只有在同时使用 Oracle 9i 客户端和服务器软件时,OracleType 才可用。

TIMESTAMP WITH LOCAL TIME ZONE

DateTime

TimestampLocal

只有在同时使用 Oracle 9i 客户端和服务器软件时,OracleType 才可用。

TIMESTAMP WITH TIME ZONE

DateTime

TimestampWithTz

只有在同时使用 Oracle 9i 客户端和服务器软件时,OracleType 才可用。

UNSIGNED INTEGER

Byte、UInt16、UInt32、UInt64、Decimal

Byte、UInt16、Uint32、Number

Size 确定 System.Data.DBType 和 OracleType

VARCHAR2

AnsiString

VarChar

由 OracleParameter 对象的 Value 属性使用的 InputOutput、Output 和 ReturnValue ParameterDirection 值为 .NET Framework 数据类型,除非输入值是 Oracle 数据类型(例如 OracleNumber 或 OracleString)。这并不适用于 REF CURSOR、BFILE 或 LOB 数据类型。

Oracle 数据类型映射C#的更多相关文章

  1. 【2016-11-3】【坚持学习】【Day18】【Oracle 数据类型 与C#映射关系】

    大部分类型的对应关系:原文:http://2143892.blog.51cto.com/2133892/499353 序号 Oracle数据类型 .NET类型 GetOracleValue类型 DbT ...

  2. Oracle 数据类型 与C#映射关系

    大部分类型的对应关系:原文:http://2143892.blog.51cto.com/2133892/499353 序号 Oracle数据类型 .NET类型 GetOracleValue类型 DbT ...

  3. MySql - JdbcType - Oracle类型映射

    MySql - JdbcType - Oracle类型映射   MySQL数据类型 JDBC TYPE Oracle数据类型 BIGINT BIGINT NUMBER(20) TINYINT TINY ...

  4. oracle数据类型

    本文转自:http://blog.csdn.net/defonds/article/details/4302695 谢谢原文作者 有道是,磨刀不误砍柴工.多了解一些底层的东西,对于Oracle开发.维 ...

  5. oracle 数据类型详解---日期型(转载)

    oracle 数据类型详解---日期型 oracle数据类型看起来非常简单,但用起来会发现有许多知识点,本文是我对ORACLE日期数据类型的一些整理,都是开发入门资料,与大家分享: 注:由于INTER ...

  6. [转]jni数据类型映射、域描述符说明

    在Java存在两种数据类型: 基本类型 和 引用类型 ,大家都懂的 . 在JNI的世界里也存在类似的数据类型,与Java比较起来,其范围更具严格性,如下: 1.primitive types ---- ...

  7. SQL Server 和Oracle 数据类型对应

    SqlServer 2k转换为Oracle 10g 列名 SqlServer数据类型 SqlServer长度 Oracle数据类型 column1 bigint 8 NUMBER(19) column ...

  8. SQL Server 数据类型映射 (ADO.NET)

    SQL Server 数据类型映射 (ADO.NET) .NET Framework 3.5 更新:November 2007 SQL Server 和 .NET Framework 基于不同的类型系 ...

  9. [转]SQL Server 和Oracle 数据类型对应

    本文转自:http://blog.sina.com.cn/s/blog_681cd80d0100q84t.html SqlServer 2k转换为Oracle 10g 列名 SqlServer数据类型 ...

随机推荐

  1. 安卓模拟器安装apk,上网

    1.首先找到安装安卓模拟器的文件夹: 2.目录:D:\Java\Android-all\platform-tools 3.运行cmd命令:adb install D:\Java\Android-all ...

  2. 通过批处理文件启动oracle11g服务

    注:ORCL是数据库实例名,默认的数据库是ORCL,你可以创建其他的,即OracleService+数据库名. ========================================启动服务 ...

  3. PO、VO、BO、DTO

    J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候,三分钟就被人家满口的专业术语喷晕了,PO VO BO DTO POJO DAO,一大堆的就来了(听过老罗对这种现象的批判的朋 ...

  4. (转载)postgresql navicat 客户端连接验证失败解决方法:password authentication failed for user

    命令:su - postgres CREATE USER foo WITH PASSWORD 'secret'; ==================== 1.2个配置修改 postgresql.co ...

  5. MSCRM Plugin Debug

    MS CRM 2011的自定义和开发(11)——插件(plugin)开发(四) 上面几篇文章介绍了Microsoft Dynamics CRM 2011中如何进行插件开发,本文将介绍插件的调试. 调试 ...

  6. nova分析(9)—— nova-novncproxy

    nova提供了novncproxy代理支持用户通过vnc来访问虚拟机,用户可以通过websocket.java客户端或者spicehtml5来访问.通过websket访问虚拟机的功能已经集成到hori ...

  7. Spring实战3:装配bean的进阶知识

    主要内容: Environments and profiles Conditional bean declaration 处理自动装配的歧义 bean的作用域 The Spring Expressio ...

  8. SNM2无法编辑HostGroup项

    经常遇到SNM2的工具无法更新,无法编辑,或者加载急慢的情况.解决方法就是在SNM2重新添加Array,然后再重新登录试试

  9. node.js的作用、回调、同步异步代码、事件循环

    http://www.nodeclass.com/articles/39274 一.node.js的作用 I/O的意义,(I/O是输入/输出的简写,如:键盘敲入文本,输入,屏幕上看到文本显示输出.鼠标 ...

  10. c#处理3种json数据的实例

    网络中数据传输经常是xml或者json,现在做的一个项目之前调其他系统接口都是返回的xml格式,刚刚遇到一个返回json格式数据的接口,通过例子由易到难总结一下处理过程,希望能帮到和我一样开始不会的朋 ...