亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用數據類型“text”存儲字符串有什么缺點嗎?

使用數據類型“text”存儲字符串有什么缺點嗎?

蠱毒傳說 2019-07-13 15:44:45
按Postgres文件,它們支持字符數據的3種數據類型:character varying(n), varchar(n)  variable-length with limit character(n), char(n)             fixed-length, blank padded text                              variable unlimited length在我的應用程序中,我遇到了一些令人不快的場景,其中插入/更新查詢失敗,因為要插入的文本超出了varchar(n)或char(n)限制。對于這種情況,將這些列的數據類型更改為text就夠了。我的問題是:如果我們將每個字符存儲列的數據類型概括并更改為text,在性能/內存方面有什么缺點嗎?如果具有數據類型的列text每次存儲10個或更少的字符,我是否應該選擇text或varchar(10)?如果我去text缺點是什么?
查看完整描述

3 回答

?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

您提到的所有數據類型都使用相同的內部表示(比較有名)。struct varlena)

這個CHARVARCHAR數據類型只需向其添加長度檢查,并且(在CHAR),具有不同的空格填充語義。

你可以用TEXT無論以上任何事情對你的邏輯都是重要的,都是安全的。


查看完整回答
反對 回復 2019-07-13
?
弒天下

TA貢獻1818條經驗 獲得超8個贊

從鏈接到的頁面中:

“這三種類型除了在使用空白填充類型時增加存儲空間,以及在存儲到長度受限列時需要額外的CPU周期來檢查長度之外,性能沒有差異。在其他數據庫系統中,字符(N)具有性能優勢,但PostgreSQL沒有這種優勢;事實上,由于存儲成本增加,字符(N)通常是三種類型中最慢的。在大多數情況下,應該使用文本或字符變化?!?/trans>

使用textPostgres中的數據類型。

但是,您應該考慮是否真的希望將大量文本存儲在數據庫中。把它當作varchar但是,使用更高的限制可以防止您無意中將大量數據存儲在數據庫中。


查看完整回答
反對 回復 2019-07-13
  • 3 回答
  • 0 關注
  • 1349 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號