1 Star 0 Fork 29

lihe01 / notebook

forked from JustryDeng / notebook 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
[06]Oracle的数据类型.md 3.59 KB
一键复制 编辑 原始数据 按行查看 历史
邓沙利文 提交于 2022-03-29 17:30 . oracle相关知识点整理

Oracle的数据类型

简述

Oracle数据库支持很多数据类型,包括char、varchar、varchar2、integer、double、date……

Oracle的数据类型

字符数据类型 char() 固定长度
varchar2() 可变长度
nchar() 固定长度(只可识别unicode字符集类型)
nvarchar() 可变长度(只可识别unicode字符集类型)
…… …… ……
数值数据类型 number() 整数和浮点数都用它
…… …… ……
日期时间数据类型 date 日期和时间数据(年月日时分秒)
timestamp 秒值可精确到小数点后六位(主要用于手动输入时)
…… …… ……
LOB数据类型 blob 存储二进制对象
clob 存储字符格式的大型对象
bfile 将二进制数据存储到操作系统的文件中
…… …… ……

注:虽然Oracle中也支持varchar、interger、double等数据类型,但是在Oracle中不建议使用。

注:char()、varchar2()等字符数据类型与MySQL中略有不同(以char为例进行说明):在MySQL中,char(4)最多能写4个汉字;而在Oracle中,char(4)最多只能写2个汉字。

注:定义数值数据时,可以只写number,不写()号,那么默认的是number(32)

示例说明:number(4)为定义数值为4位整数;number(4,1)为定义数值为3位整数,1位小数,总共4位

date数据类型详细说明

  • 直接在表中修改date数据时,要遵循这样的格式: 2017/2/3

  • 用代码添加修改date数据时,要遵循这样的格式: '2-3月-2017'

  • 在Oracle数据库中,查询时间,可以这么查: select sysdate from dual 注:其中dual是系统自带的一个表,这个表作为一个辅助来查询一些诸如系统时间这样的值。再注:查询时间不一定非要从dual表查,从其他任何表查都可以,不过不同的是:从dual表查出来的是一行;而从其他表中查出来的则可能会有很多行

  • 将日期转化为字符串:to_char 如:select to_char(sysdate,'yyyy-mm-dd hh-mi-ss') from dual 注:在oracle中,分钟要用mi占位符 注:转化后的mm、dd如果是个位数,那么会这么显示(示例):2017-01-01;如果想这么显示2017-1-1,那么需要加前缀fm,yyyy-fmmm-fmdd 注:转化后的hh是按十二进制显示;如果想按24进制显示,那么需要加后缀24,hh24-mi-ss 注:to_char不仅可以把日期转化为字符串,还能把其它类型的数据转化为字符串,如:number转化为特定格式的字符串,示例:to_char(123456,'9999,99.00') 转化结果为字符串:'1234,56.0'

  • 将字符串转化为日期:to_date 示例:to_date('2015-2-3','yyyy-mm-dd')

1
https://gitee.com/lihe01/notebook.git
git@gitee.com:lihe01/notebook.git
lihe01
notebook
notebook
master

搜索帮助