Postgresql 数据库 varchar()字符占用多少字节

create table tmp1
(
name varchar(3)
);

select pg_size_pretty(pg_relation_size('tmp1'));

-- 0 bytes

insert into tmp(name) values('欧阳子');

-- 8192 bytes

8192 bytes = 8KB = 1页(数据库的最小单位)

8页 = 1区 = 64KB(记不清磁头一次取1区还是1页数据了)

 

pg_relation_size()函数用于查询表占用空间.

当表创建的时候, 是不占空间的, 插入数据后, 数据库至少使用1KB去保存数据, 不够会继续增加.(不包含MateData)

 

首先postgresql中varchar()保存的是字符.

即可以插入3个中文, 也可以插入三个字母或者数字.

一般数据库都是UTF-8编码.

在UTF-8编码下, 一个中文 3个字节. 字母或者英文 1个字节.

 

另外

1KB = 1024B = 1024Bytes

1Bytes = 1B = 8bit

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值