Char un Varchar ir datu bāzu sistēmā parasti izmantoti rakstzīmju datu tipi, kas izskatās līdzīgi, lai gan glabāšanas prasībās starp tiem ir atšķirības. Datu bāzes projektēšanā tiek izmantots ļoti daudz datu tipu. No tiem rakstzīmju datu veidi iegūst pamanāmāku vietu, jo tos izmanto, lai saglabātu daudz informācijas, salīdzinot ar skaitļiem. Rakstzīmju datu tipus izmanto rakstzīmju vai burtciparu datu glabāšanai virknēs. Veidojot datu bāzi, tiek noteikts datu bāzes rakstzīmju kopas tips. Atkal no šiem rakstzīmju datu veidiem parasti izmanto Char un Varchar. Šajā rakstā ir paskaidrots, kas ir šie divi datu veidi, char un varchar, un atšķirība starp tiem.
ISO definīcija char ir: a raksturs un char datu tips ir pieraduši uzglabāt raksturs. Char (n) var saglabāt n fiksēta izmēra rakstzīmes. Maksimālais rakstzīmju skaits, ko var saturēt rakstzīme char (n), ir 255 rakstzīmes, un virknes garumam jābūt vērtībai no 1 līdz 8000. Char ir par piecdesmit procentiem ātrāks nekā varchar, un tāpēc, strādājot ar char Uzglabājot datus, Char izmanto statisko atmiņas sadalījumu. Kad mēs vēlamies uzglabāt stīgas ar zināmu fiksētu garumu, labāk ir izmantot char. Piemēram, saglabājot “Jā” un “Nē” kā “Y” un “N”, mēs varam izmantot datu tipu char. Glabājot personas identitātes kartes numuru ar desmit rakstzīmēm, mēs varam izmantot datu tipu kā char (10).
Kā norāda nosaukums, varchar sauc par mainīgs raksturs. Varchar izmanto, lai saglabātu burtciparu datus, kuriem ir mainīgs garums. Maksimālais rakstzīmju skaits, ko var turēt šis datu tips, ir 4000 rakstzīmes, un maksimālais krātuves lielums ir 2 GB. Varchar krātuves lielums ir faktiskais datu garums plus divi baiti. Varchar ir lēnāks nekā char, un datu glabāšanai tas izmanto dinamisko atmiņas sadalījumu. Varchar var izmantot, glabājot tādus datus kā vārdi, adreses, apraksti utt. Ne tikai virknes, bet arī tādus, kas nav virknes, piemēram, datuma tipus, “2015. gada 12. marts”, “12/03/2015”. Varchar datu tips.
• Lai gan char un varchar ir rakstzīmju datu lauki, char ir noteikta garuma datu lauks, un varchar ir mainīga lieluma datu lauks.
• Char var glabāt tikai fiksēta izmēra virknes, kas nav Unicode, bet varchar var saglabāt dažāda lieluma virknes.
• Dati, kas bieži mainās, Char ir labāks nekā varchar. Tas notiek tāpēc, ka noteikta garuma datu rinda nav pakļauta sadrumstalotībai.
• Char aizņem tikai fiksēto vietu, kas ir noteikta, deklarējot mainīgo. Bet varchar aizņems vietu, pamatojoties uz ievietotajiem datiem, kā arī tas aizņems 1 vai 2 baitus kā garuma prefiksu.
• Ja dati ir mazāki par 255 rakstzīmēm, tiek iedalīts 1 baits un ja dati pārsniedz 255 rakstzīmes, tiek rezervēti 2 baiti. Ja “Y” un “N” karodziņa glabāšanai izmantojam rakstzīmju simbolu, tas glabāšanai izmantos vienu baitu, bet, kad izmantosim varchar, karoga saglabāšanai būs nepieciešami divi baiti, ieskaitot papildu baitu kā garuma prefiksu.
Kopsavilkums:
Char un varchar ir datu bāzēs visvairāk izmantotais rakstzīmju datu tips. Char tiek izmantots, lai saglabātu virkni ar fiksētu garumu, savukārt varchar tiek izmantots, lai saglabātu virknes, kurām ir dažāda garuma. Lai iegūtu labāku datu veiktspēju, svarīgāk ir izvēlēties pareizos datu tipus datu bāzes tabulas laukiem. Ērtāk ir izmantot mazākos datu tipus, kas var pareizi saglabāt datus, jo tie mazāk vietas aizņem no atmiņas.
Attēli Pieklājība: Varchar izmantojot Wikicommons (Public Domain)