oracle_01_数据类型

一. oracle的数据类型
参考地址:
https://blog.csdn.net/qq_33301113/article/details/71439272
https://blog.csdn.net/shangboerds/article/category/2753121/6?orderby=UpdateTime

总分为4种:
1.标量类型(SCALAR,或称基本数据类型):用于保存单个值,分为数值型, 字符型, 日期型, 以及布尔型;
这里写图片描述

2.复合类型(COMPOSITE):复合类型可以在内部存放多种数值,类似于多个变量的集合,例如记录类型,嵌套表,索引表,可变数组等;
3.引用类型(REFERENCE):用于指向另一个不同对象,例如REF CURSOR,REF;
4.LOB类型:大数据类型,最多可以存储4GB的信息,主要用来处理二进制数据;

二. oracle的数据类型详解
数值型

1.NUMBER(m,n)–m表示总位数, n表示小数位数;

(1)定义整型:NUMBER(n), n表示数据长度;
(2)定义浮点型数据:NUMBER(m,n), m表示数据总长度,n表示小数位数;
(3)定义整型: INTEGER,相当于NUMBER(38,0);

2.BINARY_INTEGER与PLS_INTEGER

BINARY_INTENER用来描述不存储在数据库中,但是需要用来计算的带符号的整数值。
它以2的补码二进制形式表述。循环计数器经常使用这种类型。

PLS_INTEGER和BINARY_INTENER唯一区别是
在计算当中发生溢出时,BINARY_INTENER型的变量会被自动指派给一个NUMBER型而不会出错,
PLS_INTEGER型的变量将会发生溢出错误。

3.BINARY_FLOAT与BINARY_DOUBLE
两者比NUMBER节约空间,同时范围更大,采用二进制存储数据.


字符型
1.CHAR 与 VARCHAR2

CHAR采用定长方式保存字符串。如果用户设置的内容不足其定义长度,则会自动补充空格;
VARCHAR2是可变字符串。如果设置的内容不足其长度,也不会为其补充内容;


日期型
1.DATE和TIMESTAMP

可通过SYSDATE或SYSTIMESTAMP两个伪列来获取当前的日期时间;

布尔型
BOOLEAN, 该类型保存TRUE,FALSE,NULL
似乎只用在pl语言, 而不是用在建表的?

二. 建表时使用的数据类型
参考demo:
https://blog.csdn.net/baidu_39137769/article/details/75305446
https://www.cnblogs.com/qmfsun/p/3817344.html
这里写图片描述

create table person(
  name varchar2(20),
  age  number(2),
  birth date default sysdate,
  sex varchar2(20) default '男'
);

三.PL/SQL语言的数据类型
参考demo:https://blog.csdn.net/qq_33301113/article/details/71439272


四.其他类型

1.ROWID类型
ROWID与字符串互转
https://blog.csdn.net/shangboerds/article/details/42317597
ROWID与ROWNUM的用法以及区别
https://blog.csdn.net/yu102655/article/details/52370542

2.%TYPE,%ROWTYPE,RECORD类型
https://blog.csdn.net/linhaiyun_ytdx/article/details/70175756

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值