Oracle 数据类型

基础数据类型

字符类型

按照存贮空间分为固定长度类型(char)可变数据类型(varchar2/nvachar2)两种

char

定长类型,会用空格填充来达到最大长度

非Null的char(12)总是包含12字节信息

char字段最多可存储2000字节信息,如果创建表时,不指定char长度,默认为1

varchar2

变长字符串,与char类型不同,他不会使用空格填充至最大长度

最多可存储4000字节的信息

nvarchar2

这是一个包含unicode格式数据的变长字符串

最多可存储4000字节的信息

西文、数字:一个字节

汉字:三个字节

数字类型

number类型

既可以表示数字类型,也可以表示浮点类型

number(p,s) 是最常见的数字类型

p : 是precison的缩写,表示有效数字的位数,最多不超过38个有效数字

s : 是sacle的英文缩写,表示小数点数字的位数

只写number:表示就是一个整数

number(20,2):表示整数位的位数为20,小数点后的位数精确到2位

integer类型

是number的子类型,等同于number(38,0),用来存储整数

若插入、更新的数值中有小数,则会被四舍五入

日期类型

DATE

最常用的数据类型,存储日期和时间信息,虽然可以用字符串或者数字类型来表示日期和时间信息,但是日期数据具有特殊关联的属性。

一般占有7个字节的存储空间。

TimsStamp

这是一个7字节或者12字节的定宽时间数据类型,它与DATA数据类型不同,因为可以包含小数秒,带小数秒的TimeStamp在小数点右边最多可以保留9位

TimeStamp with time zone

这是timeStamp类型的变种,它包含了时区偏移量的值。

TimeStamp witth local time zone

将时间数据以数据库时区进行规划后进行存储

Lob类型

CLOB类型(charachter large object)

二进制数据,存储单个字节和多个字节字符数据,最大长度4g

BLOB类型(Binary Larage Object)

存储非结构化的二进制数据最大对象,它可以被认为是没有字符集语意的比特流,

一般是图像、声音、视频等文件,最大长度是4g

NLLOG类型

存储unicode类型是数据,最大长度是4G

Long & Raw & Long Raw 类型

Long

它存储变长字符串(超长字符串),最多达2G的字符数据

(2GB 是指2千兆字节,而不是2千兆字符)

Long Raw

能存储2GB的二进制数据,可以存放多媒体、图像、声音

Raw类型

用于存储二进制或字符类型数据,必须指定长度;

这种数据类型存储的数据不会发生字符集转换;

可以存放多媒体、图像、声音等。

附:.NET 类型转化对应表

序号 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
相关推荐
你的人类朋友4 小时前
说说git的变基
前端·git·后端
阿杆4 小时前
玩转 Amazon ElastiCache 免费套餐:小白也能上手
后端
阿杆5 小时前
无服务器每日自动推送 B 站热门视频
后端
公众号_醉鱼Java6 小时前
Elasticsearch 字段膨胀使用 Flattened类型
后端·掘金·金石计划
JohnYan6 小时前
工作笔记 - CentOS7环境运行Bun应用
javascript·后端·容器
探索java7 小时前
Netty Channel详解:从原理到实践
java·后端·netty
追逐时光者7 小时前
2025 年全面的 C#/.NET/.NET Core 学习路线集合,学习不迷路!
后端·.net
ankleless8 小时前
Spring Boot 实战:从项目搭建到部署优化
java·spring boot·后端
百锦再9 小时前
一文精通 Swagger 在 .NET 中的全方位配置与应用
后端·ui·.net·接口·配置·swagger·访问
用户4822137167759 小时前
C++——静态数组、动态数组
后端