一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專(zhuān)注于服務(wù)器技術(shù)及軟件下載分享
分類(lèi)導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫(kù)技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫(kù) - PostgreSQL - Postgresql 數(shù)據(jù)庫(kù) varchar()字符占用多少字節(jié)介紹

Postgresql 數(shù)據(jù)庫(kù) varchar()字符占用多少字節(jié)介紹

2021-02-28 17:22MichaelZhu PostgreSQL

這篇文章主要介紹了Postgresql 數(shù)據(jù)庫(kù) varchar()字符占用多少字節(jié)介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

如下所示:

?
1
2
3
4
5
6
7
8
9
10
create table tmp1
(
name varchar(3)
);
 
select pg_size_pretty(pg_relation_size('tmp1'));
-- 0 bytes
 
insert into tmp(name) values('歐陽(yáng)子');
-- 8192 bytes

8192 bytes = 8KB = 1頁(yè)(數(shù)據(jù)庫(kù)的最小單位)

8頁(yè) = 1區(qū) = 64KB(記不清磁頭一次取1區(qū)還是1頁(yè)數(shù)據(jù)了)

pg_relation_size()函數(shù)用于查詢表占用空間.

當(dāng)表創(chuàng)建的時(shí)候, 是不占空間的, 插入數(shù)據(jù)后, 數(shù)據(jù)庫(kù)至少使用1KB去保存數(shù)據(jù), 不夠會(huì)繼續(xù)增加.(不包含MateData)

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

即可以插入3個(gè)中文, 也可以插入三個(gè)字母或者數(shù)字.

一般數(shù)據(jù)庫(kù)都是UTF-8編碼.

在UTF-8編碼下, 一個(gè)中文 3個(gè)字節(jié). 字母或者英文 1個(gè)字節(jié).

另外

1KB = 1024B = 1024Bytes

1Bytes = 1B = 8bit

補(bǔ)充:postgres數(shù)據(jù)庫(kù)varchar類(lèi)型的最大長(zhǎng)度

在分析一個(gè)場(chǎng)景時(shí),postgres中的一個(gè)字段存儲(chǔ)很長(zhǎng)的字符串時(shí),是否可能存在問(wèn)題。被問(wèn)到varchar類(lèi)型的最大長(zhǎng)度,不是很清楚。

查了一下,記錄一下。

名字 描述
character varying(n), varchar(n) 變長(zhǎng),有長(zhǎng)度限制
character(n), char(n) 定長(zhǎng),不足補(bǔ)空白
text 變長(zhǎng),無(wú)長(zhǎng)度限制

簡(jiǎn)單來(lái)說(shuō),varchar的長(zhǎng)度可變,而char的長(zhǎng)度不可變,對(duì)于postgresql數(shù)據(jù)庫(kù)來(lái)說(shuō)varchar和char的區(qū)別僅僅在于前者是變長(zhǎng),而后者是定長(zhǎng),最大長(zhǎng)度都是10485760(1GB)

varchar不指定長(zhǎng)度,可以存儲(chǔ)最大長(zhǎng)度(1GB)的字符串,而char不指定長(zhǎng)度,默認(rèn)則為1,這點(diǎn)需要注意。

text類(lèi)型:在postgresql數(shù)據(jù)庫(kù)里邊,text和varchar幾乎無(wú)性能差別,區(qū)別僅在于存儲(chǔ)結(jié)構(gòu)的不同。

對(duì)于char的使用,應(yīng)該在確定字符串長(zhǎng)度的情況下使用,否則應(yīng)該選擇varchar或者text。

其他人說(shuō)的最大長(zhǎng)度是10485760,我不是DBA,也沒(méi)做過(guò)這個(gè)實(shí)驗(yàn)。但是有疑問(wèn),編碼格式不為UTF-8時(shí),是否還是10485760?

text類(lèi)型是挺好用的,假如需要存儲(chǔ)一個(gè)復(fù)雜且結(jié)構(gòu)可能會(huì)變化的數(shù)據(jù),搞成json字符串存儲(chǔ)到text里也是很好的。感覺(jué)成了MongoDB

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持服務(wù)器之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

原文鏈接:https://blog.csdn.net/a5685263/article/details/102610673

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 日本大乳护士的引诱图片 | 91精品国产亚一区二区三区 | 视频一区二区 村上凉子 | free极度另类性欧美 | 久久婷婷丁香五月色综合啪免费 | 日产精品一卡2卡三卡4乱码久久 | 菠萝视频5正版在线观看 | 成人国产在线视频在线观看 | 手机在线观看精品国产片 | 韩日理论片 | 国产精品久久久久久久久免费观看 | 扒开大腿狠狠挺进视频 | 国产精品一区久久精品 | 女同学高中你下面好紧 | 给我免费观看的视频在线播放 | 四虎精品成人免费视频 | 日韩伦理一区 | 免费观看一级特黄三大片视频 | 欧亚尺码专线欧洲s码wmy | 韩国三级hd中文字幕李采潭 | 日韩综合网 | 996热精品视频在线观看 | 毛片免费的 | 深夜视频免费看 | 日老逼 | 九哥草逼网 | 扒开黑女人p大荫蒂老女人 扒开大腿狠狠挺进视频 | 日韩免费在线视频 | xnxx老师| 亚洲 日本 中文字幕 制服 | 亚洲黄色成人 | 俄罗斯引擎首页进入 | 国产免费精彩视频 | 99最新网址 | 男人的天堂久久精品激情a 男人的天堂va | 欧美一级特黄特色大片 | 99久久精品免费看国产一区 | 日韩福利一区 | 精品人伦一区二区三区潘金莲 | 成人做视频免费 | 久久精品热只有精品 |