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
相关推荐
GetcharZp7 小时前
玩转 Linux 机器视觉:手把手带你搞定 Ubuntu 下海康工业相机 C++ SDK
后端
星星在线11 小时前
MusicFree:一个「All in One」的个人音乐服务器,让听歌回归简单
前端·后端
IT_陈寒11 小时前
Redis的SETNX并发问题让我加了三天班
前端·人工智能·后端
demo007x12 小时前
Docling 文档转换以及技术架构分析
前端·后端·程序员
袋鱼不重13 小时前
我的神奇同事,AI 用多了居然写了个 Open In Codex
前端·后端·ai编程
用户83562907805113 小时前
使用 Python 操作 Word 内容控件
后端·python
像我这样帅的人丶你还13 小时前
啥? 前端也要会干Java?🛵🛵🛵
后端
Hommy8813 小时前
【剪映小助手】添加贴纸接口(Add Sticker)
后端·github·剪映小助手·视频剪辑自动化·剪映api
CaffeinePro14 小时前
FastAPI响应处理:返回值、状态码、响应头与异常标准化与案例解析
后端
HuanYu14 小时前
PageHelper分页的原理
后端