Char ja Varchari erinevus

Char vs Varchar
 

Char ja Varchar on andmebaasisüsteemis tavaliselt kasutatavad tähemärkide andmetüübid, mis näevad välja sarnased, kuigi salvestusnõuete osas on nende vahel erinevusi. Andmebaaside kujundamisel on kasutatud palju andmetüüpe. Neist märgi andmetüübid saavad nähtavama koha, kuna neid kasutatakse numbritega võrreldes palju teabe salvestamiseks. Märkide andmetüüpe kasutatakse märkide või tähtnumbriliste andmete salvestamiseks stringides. Andmebaasi tähemärgikomplekti tüüp määratletakse andmebaasi loomisel. Jällegi on neist tähemärkide andmetüüpidest kõige sagedamini kasutatavad Char ja Varchar. Selles artiklis selgitatakse, mis need kaks andmetüüpi, char ja varchar, on ja mis nende vahel on.

Mis on Char?

Söe ISO määratlus on a tegelane ja char-andmetüüp on harjunud salvesta tegelane. Char (n) mahutab n fikseeritud suurusega tähemärki. Maksimaalne tähemärkide arv, mida char (n) mahutab, on 255 tähemärki ja stringi pikkus peab olema väärtus vahemikus 1 kuni 8000. Char on viiskümmend protsenti kiirem kui varchar ja seetõttu saame parema jõudluse, kui töötame koos char Char kasutab andmete salvestamisel staatilist mälujaotust. Kui tahame teadaoleva fikseeritud pikkusega stringe talletada, on parem kasutada char. Näitena, kui salvestame 'Jah' ja 'Ei' väärtustena Y ja N, saame kasutada andmetüüpi char. Ja ka kümne tähemärgilise isikliku isikutunnistuse numbri salvestamisel saame kasutada andmetüüpi char (10).

Mis on Varchar?

Nagu nimigi ütleb, nimetatakse varchariks a muutuv märk. Varcharit kasutatakse varieeruva pikkusega tähtnumbriliste andmete salvestamiseks. Selle andmetüübi maksimaalne tähemärkide arv on 4000 tähemärki ja maksimaalne salvestusmaht on 2 GB. Varchari salvestusmaht on andmete tegelik pikkus pluss kaks baiti. Varchar on särist aeglasem ja kasutab andmete salvestamisel dünaamilist mälujaotust. Saame kasutada varcharit selliste andmete nagu nimed, aadressid, kirjeldused jne salvestamiseks. Kaardile saab salvestada mitte ainult stringe, vaid ka stringiväliseid tüüpe, näiteks kuupäeva tüüpe, “12. märts 2015”, “12.03.2015”. varchari andmetüüp.

Mis vahe on Charil ja Varcharil??

• Kuigi char ja varchar on tähemärkide andmeväljad, on char kindla pikkusega andmeväli ja varchar on muutuva suurusega andmeväli.

• Char võib salvestada ainult kindla suurusega mitte-Unicode stringimärke, kuid varchar võib salvestada erineva suurusega stringe.

• Sageli muutuvate andmete puhul on Char parem kui varchar. Selle põhjuseks on asjaolu, et fikseeritud pikkusega andmerida ei ole killustatud.

• Char hõivab ainult kindla ruumi, mis on määratletud muutuja deklareerimisel. Kuid varchar võtab sisestatud andmete põhjal ruumi ja lisaks võtab see pikkuse eesliitena 1 või 2 baiti.

• Kui andmeid on vähem kui 255 tähemärki, eraldatakse 1 bait ja kui andmeid on üle 255 tähemärgi, reserveeritakse 2 baiti. Kui Y ja N lipu salvestamiseks kasutame sümbolit, kasutab see salvestuseks ühte baiti, kuid varchari kasutamisel kulub lipu salvestamiseks kaks baiti, lisades lisabaidi pikkuse eesliitena.

Kokkuvõte:

Char vs Varchar

Char ja varchar on andmebaasides kõige kasutatavamad tähemärkide andmetüübid. Char kasutatakse kindla pikkusega stringi salvestamiseks, varchar aga erineva pikkusega stringide hoidmiseks. Andmete parema jõudluse saavutamiseks on olulisem valida oma andmebaasi tabelite väljade jaoks õiged andmetüübid. Mugavam on kasutada väikseimaid andmetüüpe, mis suudavad andmeid õigesti salvestada, kuna need võtavad mälust vähem ruumi.

Piltide viisakus: Varchar Wikicommonsi kaudu (Public Domain)