zoukankan      html  css  js  c++  java
  • Oracle 数据类型映射C#

    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 

    SingleDoubleDecimal 

    FloatDoubleNumber 

    Size 确定 System.Data.DBType 和 OracleType

    INTEGER 

    SByteInt16Int32Int64Decimal 

    SByteInt16Int32Number 

    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 

    ByteUInt16UInt32UInt64Decimal 

    ByteUInt16Uint32Number 

    Size 确定 System.Data.DBType 和 OracleType

    VARCHAR2 

    AnsiString 

    VarChar 

     

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

  • 相关阅读:
    Java提倡的命名习惯
    菜鸟涂鸦作品展_No.24
    Java异常处理学习笔记
    菜鸟涂鸦作品展_No.21
    菜鸟涂鸦作品展_No.20
    菜鸟涂鸦作品展_No.23
    对我影响最大的老师
    自我介绍0.0
    xml的标记、元素和属性
    C#(.net)中的DllImport
  • 原文地址:https://www.cnblogs.com/Brainpan/p/3205764.html
Copyright © 2011-2022 走看看