PostgreSQL 中字段类型varchar的用法
程序员文章站
2022-04-02 21:19:52
postgresql数据库中varchar类型与sql server中字段用法有差别,postgresql中如果字段设置为varchar类型长度为10,则无论存字母、数字或其它符号,长度最大为10个,...
postgresql数据库中varchar类型与sql server中字段用法有差别,postgresql中如果字段设置为varchar类型长度为10,则无论存字母、数字或其它符号,长度最大为10个,也就是字母和汉字占的位置是一样的。
sql server中如设置字段类型为nvarchar类型长度为10,则存汉字最大为5个,字母为10个,字母加汉字混合时,字母和汉字占的长度一样
补充: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
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
推荐阅读
-
.NET中的Timer类型用法详解
-
简介Python的collections模块中defaultdict类型的用法
-
N字符在Sql Server字段类型中的重要性概述
-
sqlserver 中ntext字段的批量替换(updatetext的用法)
-
Python中内置数据类型list,tuple,dict,set的区别和用法
-
N字符在Sql Server字段类型中的重要性概述
-
sqlserver 中ntext字段的批量替换(updatetext的用法)
-
MySQL中decimal类型用法的简单介绍
-
SQL2005中char nchar varchar nvarchar数据类型的区别和使用环境讲解
-
Django中模型Model添加JSON类型字段的方法