5.Oracle中数据类型

Oracle 数据类型

字符

char(2000)

​ 2000个字节(2000个英文,666个汉字——utf8,1000个汉字——gbk)

nchar(1000)

​ 1000个字符(1000个英文,1000个汉字——utf8,1000个汉字——gbk)

varchar2(4000)

​ 4000个字节 (4000个英文,1333个汉字——utf8,2000个汉字——gbk)

nvarchar2(2000)

​ 2000个字符(2000个英文,2000个汉字——utf8,2000个汉字——gbk)

char和nchar是固定长度存储(不足会自动补齐你指定的长度)

varchar和nvarchar是可变长度存储(按实际字符串长度存储)

n表示按字符存储(不加n按字节存储)

drop table t_user;

-- create table t_user (name char(10));        -- 10 6
-- create table t_user (name nchar(10));       -- 10 10
-- create table t_user (name varchar2(10));    -- 3 2
create table t_user (name nvarchar2(10));      -- 3 2

insert into t_user values ('Tom');
insert into t_user values ('我们');


select * from t_user;

select length(name) from t_user;

数值

int/long 存整数

number/float 存小数

number(m, n) 存指定精度的小数

number(5, 2) [-999.99, 999.99]

insert into t_user values (-999.99);
insert into t_user values (999.99);
insert into t_user values (-999.945);	-- -999.95
insert into t_user values (-999.995);	-- 超出精度

number(5, -2)

create table t_user (salary number(5, -2));

insert into t_user values (12345.99);	-- 12300
insert into t_user values (12355.99);	-- 12400

注意:没有double

时间日期

date 年月日时分秒

timestamp 年月日时分秒毫秒

create table t_user (birth date);
insert into t_user values (sysdate);

create table t_user (birth timestamp);
insert into t_user values (systimestamp);

二进制

blob binary large object

​ 可以含有图片、影像、文本数据

clob character large object

​ 只能含有文本数据

没有长度限制(比char类型有长度优势)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值