日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁(yè) > 科技  > 軟件

對(duì)線面試官-CHAR和VARCHAR了解嘛,區(qū)別是什么

來(lái)源: 責(zé)編: 時(shí)間:2024-04-16 08:31:57 173觀看
導(dǎo)讀面試官:我看你們項(xiàng)目上用的是MySQL,相關(guān)的類型了解嗎?派大星:嗯,了解一些。面試官:嗯,那你知道char和varchar的區(qū)別是什么嘛?簡(jiǎn)單說(shuō)一說(shuō)。派大星:好的。首先,CHAR和VARCHAR均為數(shù)據(jù)庫(kù)中用于存儲(chǔ)字符串?dāng)?shù)據(jù)的數(shù)據(jù)類型。它們之間

面試官:我看你們項(xiàng)目上用的是MySQL,相關(guān)的類型了解嗎?DlV28資訊網(wǎng)——每日最新資訊28at.com

派大星:嗯,了解一些。DlV28資訊網(wǎng)——每日最新資訊28at.com

面試官:嗯,那你知道char和varchar的區(qū)別是什么嘛?簡(jiǎn)單說(shuō)一說(shuō)。DlV28資訊網(wǎng)——每日最新資訊28at.com

派大星:好的。DlV28資訊網(wǎng)——每日最新資訊28at.com

首先,CHAR和VARCHAR均為數(shù)據(jù)庫(kù)中用于存儲(chǔ)字符串?dāng)?shù)據(jù)的數(shù)據(jù)類型。它們之間的主要區(qū)別在于存儲(chǔ)空間的使用方式。DlV28資訊網(wǎng)——每日最新資訊28at.com

比如:CHAR為一種定長(zhǎng)數(shù)據(jù)類型,其長(zhǎng)度固定且在存儲(chǔ)時(shí)會(huì)自動(dòng)加入空格以填滿指定長(zhǎng)度,長(zhǎng)度范圍為0至255;DlV28資訊網(wǎng)——每日最新資訊28at.com

DlV28資訊網(wǎng)——每日最新資訊28at.com

VARCHAR則為一種可變長(zhǎng)度數(shù)據(jù)類型,僅存儲(chǔ)實(shí)際的字符串內(nèi)容,無(wú)需填充空格。故在存儲(chǔ)短字符串時(shí),VARCHAR能夠節(jié)省空間,長(zhǎng)度范圍為0至65535(適用于MySQL 5.0.3及之后版本)。DlV28資訊網(wǎng)——每日最新資訊28at.com

若采用CHAR(100),插入記錄后即分配了100個(gè)字符,后續(xù)修改不引起頁(yè)分裂問(wèn)題;而VARCHAR(100)因未預(yù)分配存儲(chǔ)空間,初始插入數(shù)據(jù)時(shí),可變長(zhǎng)度字段按實(shí)際長(zhǎng)度儲(chǔ)存,且數(shù)據(jù)在文件中緊密連續(xù)。若值變長(zhǎng),原位置無(wú)法擴(kuò)展,無(wú)法覆蓋原空間,MySQL將采用頁(yè)分裂方式擴(kuò)展字段的長(zhǎng)度。DlV28資訊網(wǎng)——每日最新資訊28at.com

面試官:不錯(cuò),既然這樣,它倆在使用的時(shí)候有什么有缺點(diǎn)呢?DlV28資訊網(wǎng)——每日最新資訊28at.com

派大星:DlV28資訊網(wǎng)——每日最新資訊28at.com

VARCHAR的優(yōu)勢(shì):在于其可變長(zhǎng)度的字符類型,具有更好的兼容性;然而,使用VARCHAR可能引發(fā)內(nèi)存碎片問(wèn)題,需要額外1到2個(gè)字節(jié)存儲(chǔ)長(zhǎng)度信息,并更新語(yǔ)句可能導(dǎo)致頁(yè)分裂等情況。DlV28資訊網(wǎng)——每日最新資訊28at.com

DlV28資訊網(wǎng)——每日最新資訊28at.com

DlV28資訊網(wǎng)——每日最新資訊28at.com

舉例來(lái)說(shuō),適合使用VARCHAR的場(chǎng)景包括存儲(chǔ)產(chǎn)品描述(可變長(zhǎng)度)、用戶地址(可變長(zhǎng)度)以及用戶名稱(可變長(zhǎng)度)。DlV28資訊網(wǎng)——每日最新資訊28at.com

CHAR的長(zhǎng)處在于其定長(zhǎng)字符串類型,有助于減少內(nèi)存碎片,并無(wú)需額外的磁盤空間來(lái)存儲(chǔ)長(zhǎng)度信息;但其短板在于會(huì)消除列末尾的空格信息。DlV28資訊網(wǎng)——每日最新資訊28at.com

CHAR在長(zhǎng)度不足時(shí)會(huì)補(bǔ)充空格,因此,當(dāng)在一個(gè)長(zhǎng)度為10的CHAR中分別存儲(chǔ)"paidaxing "和"paidaxing"時(shí),實(shí)際存儲(chǔ)的均為"paidaxing    ",導(dǎo)致原空格信息喪失。DlV28資訊網(wǎng)——每日最新資訊28at.com

舉例來(lái)說(shuō),適合使用CHAR的情境包括存儲(chǔ)身份證號(hào)(固定長(zhǎng)度)、訂單號(hào)(固定長(zhǎng)度)以及國(guó)家編碼(固定長(zhǎng)度)。DlV28資訊網(wǎng)——每日最新資訊28at.com

面試官:挺好,看來(lái)確實(shí)掌握的不錯(cuò)。DlV28資訊網(wǎng)——每日最新資訊28at.com

派大星:嘿嘿,謝謝,就是在使用過(guò)程中有去比較了解過(guò)。畢竟如果在設(shè)計(jì)索引的時(shí)候需要考慮,具體的索引設(shè)計(jì)原則以及優(yōu)化慢SQL可參考?xì)v史文章:DlV28資訊網(wǎng)——每日最新資訊28at.com

日活3kw下,如何應(yīng)對(duì)實(shí)際業(yè)務(wù)場(chǎng)景中SQL過(guò)慢的優(yōu)化挑戰(zhàn)?DlV28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-83781-0.html對(duì)線面試官-CHAR和VARCHAR了解嘛,區(qū)別是什么

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 聊聊架構(gòu)設(shè)計(jì)流程:識(shí)別復(fù)雜度

下一篇: 實(shí)戰(zhàn):如何編寫一個(gè) OpenTelemetry Extensions

標(biāo)簽:
  • 熱門焦點(diǎn)
Top 主站蜘蛛池模板: 黑龙江省| 湘潭市| 寿光市| 论坛| 临沂市| 枣强县| 会宁县| 丹棱县| 丽水市| 宜城市| 五家渠市| 怀化市| 定远县| 锡林郭勒盟| 永顺县| 广平县| 连州市| 延寿县| 调兵山市| 古交市| 清河县| 鄂伦春自治旗| 新绛县| 凭祥市| 乳山市| 旬阳县| 星子县| 聂荣县| 察哈| 东宁县| 吉木萨尔县| 开原市| 绥阳县| 鹤峰县| 清苑县| 施甸县| 梓潼县| 舒城县| 翁源县| 大石桥市| 巴中市|