最近備考時恰好遇到這個知識點,以爲char和varchar2的不一樣點能夠從評價算法的三個標準(空間複雜度,時間複雜度,穩定性)來區分,就mark一下。算法
char和varchar2都是用來存儲字符的。
內存消耗數據庫
char是固定長度字符型數據,長度以字節爲單位,最小長度和默認長度都爲1,最大長度爲2000。 varchar2是長度變化的字符型數據,最小長度爲1,最大長度爲4000。 varchar2的長度取決於存儲的字符串長度,char是固定長度,多出部分用null填充。 varchar2比char更節省空間。
效率ide
char的效率比varchar2的效率稍高(以空間換時間)
穩定性設計
若是一個varchar2列常常被修改,並且每次被修改的數據的長度不一樣,會引發「行遷移」現象,這是數據庫 設計時要儘可能避免的,在這種狀況下用char代替varchar2會更好一點。