大部分类型的对应关系:原文:http://2143892.blog.51cto.com/2133892/499353
序号
|
Oracle数据类型
|
.NET类型
|
GetOracleValue类型
|
DbType
|
OracleType
|
1
|
BFILE
|
byte[]
|
OracleBFile
|
|
BFile
|
2
|
BLOB
|
byte[]
|
OracleLob
|
|
Blob
|
3
|
CHAR
|
string
|
OracleString
|
AnsiStringFixedLength
|
Char
|
4
|
CLOB
|
string
|
OracleLob
|
|
Clob
|
5
|
DATE
|
DateTime
|
OracleDateTime
|
DateTime
|
DateTime
|
6
|
FLOAT
|
Decimal
|
OracleNumber
|
Single、Double、Decimal
|
Float、Double、Number
|
7
|
INTEGER
|
Decimal
|
OracleNumber
|
SByte、Int16、Int32、Int64、Decimal
|
SByte、Int16、Int32、Number
|
8
|
INTERVAL YEAR TO MONTH
|
Int32
|
OracleMonthSpan
|
Int32
|
IntervalYearToMonth
|
9
|
INTERVAL DAY TO SECOND
|
TimeSpan
|
OracleTimeSpan
|
Object
|
IntervalDayToSecond
|
10
|
LONG
|
string
|
OracleString
|
AnsiString
|
LongVarChar
|
11
|
LONG RAW
|
byte[]
|
OracleBinary
|
Binary
|
LongRaw
|
12
|
NCHAR
|
string
|
OracleString
|
StringFixedLength
|
NChar
|
13
|
NCLOB
|
string
|
OracleLob
|
|
NClob
|
14
|
NUMBER
|
Decimal
|
OracleNumber
|
VarNumeric
|
Number
|
15
|
NVARCHAR2
|
string
|
OracleString
|
String
|
NVarChar
|
16
|
RAW
|
byte[]
|
OracleBinary
|
Binary
|
RAW
|
17
|
ROWID
|
string
|
OracleString
|
AnsiString
|
Rowid
|
18
|
TIMESTAMP
|
DateTime
|
OracleDateTime
|
DateTime
|
Timestamp
|
19
|
VARCHAR2
|
string
|
OracleString
|
AnsiString
|
VarChar
|
Number是最多变化的类型:原文:http://www.cnblogs.com/xuzhiwei/p/3998446.html
cle |
DB2/400 |
C |
C# |
C/C#数据范围 |
NUMBER |
Float(n)/REAL/DOUBLE |
double |
double |
1.7E +/- 308 (15 digits)
|
NUMBER(p) p<=4 |
SAMLLINT DECIMAL(p) NUMBER(p) |
short |
Int16 |
–32,768 to 32,767
NUMBER(5)
|
NUMBER(p) 5<=p<=9 |
INTEGER DECIMAL(p) NUMBER(p) |
int |
Int32 |
–2,147,483,648 to 2,147,483,647
NUMBER(10)
|
NUMBER(p) 10<=p<=19 |
BIGINT DECIMAL(p) NUMBER(p) |
__int64 |
Int64 |
–9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
NUMBER(19)
|
NUMBER(p,s) p=7 s=3 |
Float(n) DECIMAL(p,s) NUMBER(p,s) |
float |
float |
3.4E +/- 38 (7 digits)
|
NUMBER(p,s) p=15 s=5 |
REAL DECIMAL(p,s) NUMBER(p,s) |
double |
double |
1.7E +/- 308 (15 digits)
|
NUMBER(p,s) p=15 s=5 |
DOUBLE DECIMAL(p,s) NUMBER(p,s) |
double |
double |
1.7E +/- 308 (15 digits)
|
Oracle 是没有boolean 类型的,因此要用Number(1) ,存储1,0 再在程序中转换为boolean。
大部分类型的对应关系:原文:http://2143892.blog.51cto.com/2133892/499353
序号
|
Oracle数据类型
|
.NET类型
|
GetOracleValue类型
|
DbType
|
OracleType
|
1
|
BFILE
|
byte[]
|
OracleBFile
|
|
BFile
|
2
|
BLOB
|
byte[]
|
OracleLob
|
|
Blob
|
3
|
CHAR
|
string
|
OracleString
|
AnsiStringFixedLength
|
Char
|
4
|
CLOB
|
string
|
OracleLob
|
|
Clob
|
5
|
DATE
|
DateTime
|
OracleDateTime
|
DateTime
|
DateTime
|
6
|
FLOAT
|
Decimal
|
OracleNumber
|
Single、Double、Decimal
|
Float、Double、Number
|
7
|
INTEGER
|
Decimal
|
OracleNumber
|
SByte、Int16、Int32、Int64、Decimal
|
SByte、Int16、Int32、Number
|
8
|
INTERVAL YEAR TO MONTH
|
Int32
|
OracleMonthSpan
|
Int32
|
IntervalYearToMonth
|
9
|
INTERVAL DAY TO SECOND
|
TimeSpan
|
OracleTimeSpan
|
Object
|
IntervalDayToSecond
|
10
|
LONG
|
string
|
OracleString
|
AnsiString
|
LongVarChar
|
11
|
LONG RAW
|
byte[]
|
OracleBinary
|
Binary
|
LongRaw
|
12
|
NCHAR
|
string
|
OracleString
|
StringFixedLength
|
NChar
|
13
|
NCLOB
|
string
|
OracleLob
|
|
NClob
|
14
|
NUMBER
|
Decimal
|
OracleNumber
|
VarNumeric
|
Number
|
15
|
NVARCHAR2
|
string
|
OracleString
|
String
|
NVarChar
|
16
|
RAW
|
byte[]
|
OracleBinary
|
Binary
|
RAW
|
17
|
ROWID
|
string
|
OracleString
|
AnsiString
|
Rowid
|
18
|
TIMESTAMP
|
DateTime
|
OracleDateTime
|
DateTime
|
Timestamp
|
19
|
VARCHAR2
|
string
|
OracleString
|
AnsiString
|
VarChar
|
Number是最多变化的类型:原文:http://www.cnblogs.com/xuzhiwei/p/3998446.html
cle |
DB2/400 |
C |
C# |
C/C#数据范围 |
NUMBER |
Float(n)/REAL/DOUBLE |
double |
double |
1.7E +/- 308 (15 digits)
|
NUMBER(p) p<=4 |
SAMLLINT DECIMAL(p) NUMBER(p) |
short |
Int16 |
–32,768 to 32,767
NUMBER(5)
|
NUMBER(p) 5<=p<=9 |
INTEGER DECIMAL(p) NUMBER(p) |
int |
Int32 |
–2,147,483,648 to 2,147,483,647
NUMBER(10)
|
NUMBER(p) 10<=p<=19 |
BIGINT DECIMAL(p) NUMBER(p) |
__int64 |
Int64 |
–9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
NUMBER(19)
|
NUMBER(p,s) p=7 s=3 |
Float(n) DECIMAL(p,s) NUMBER(p,s) |
float |
float |
3.4E +/- 38 (7 digits)
|
NUMBER(p,s) p=15 s=5 |
REAL DECIMAL(p,s) NUMBER(p,s) |
double |
double |
1.7E +/- 308 (15 digits)
|
NUMBER(p,s) p=15 s=5 |
DOUBLE DECIMAL(p,s) NUMBER(p,s) |
double |
double |
1.7E +/- 308 (15 digits)
|
Oracle 是没有boolean 类型的,因此要用Number(1) ,存储1,0 再在程序中转换为boolean。
|
请发表评论