Char și Varchar sunt frecvent utilizate tipuri de date de caractere în sistemul de baze de date care arată asemănător, deși există diferențe între ele când vine vorba de cerințele de stocare. În proiectarea bazelor de date, există o mulțime de tipuri de date utilizate. Dintre acestea, tipurile de date de caractere au un loc mai proeminent, deoarece acestea sunt folosite pentru a stoca o mulțime de informații în comparație cu numerele. Tipurile de date ale caracterelor sunt utilizate pentru stocarea caracterelor sau a datelor alfanumerice în șiruri de caractere. Tipul setului de caractere al bazei de date este definit la crearea bazei de date. Din nou, din aceste tipuri de date caracter, Char și Varchar sunt cele utilizate în mod obișnuit. Acest articol explică ce sunt aceste două tipuri de date, char și varchar, și diferența dintre ele.
Definiția ISO a char este a caracter iar tipul de date char este folosit pentru stoca un caracter. Char (n) poate stoca n mărimea fixă a caracterelor. Numărul maxim de caractere pe care un caracter (n) îl poate conține este de 255 de caractere, iar lungimea unui șir trebuie să fie de la 1 la 8000. Char este cu cincizeci la sută mai rapid decât varchar și, prin urmare, putem obține o performanță mai bună atunci când lucrăm cu carboniza. Char utilizează alocarea de memorie statică atunci când stochează date. Când vrem să stocăm șiruri cu o lungime fixă cunoscută, este mai bine să folosim caracterele. De exemplu, când stocăm "Da" și "Nu" ca "Y" și "N", putem folosi tipul de date char. Și, de asemenea, atunci când stocăm un număr de identitate națională al unei persoane cu zece caractere, putem folosi tipul de date ca char (10).
După cum sugerează și numele, varchar este numit a caracter variabil. Varchar este folosit pentru a stoca date alfanumerice care au lungimi variabile. Numărul maxim de caractere pe care acest tip de date îl poate conține este de 4000 de caractere, iar dimensiunea maximă de stocare este de 2 GB. Dimensiunea de stocare a lui varchar este lungimea reală a datelor plus două octeți. Varchar este mai lent decât char și utilizează alocarea dinamică a memoriei atunci când stochează date. Putem folosi varchar atunci când stocăm date, cum ar fi numele, adresele, descrierile, etc. De asemenea, nu pot fi stocate numai șiruri de caractere, dar și tipuri non-string, cum ar fi tipurile de date, "12 martie 2015", "12/03/2015" tipul de date varchar.
• Deși char și varchar sunt câmpuri de date de caractere, char este un câmp cu lungime fixă și varchar este un câmp de date cu mărime variabilă.
• Char poate stoca numai caractere de caractere non-Unicode cu dimensiuni fixe, dar varchar poate stoca dimensiuni variabile de șiruri de caractere.
• Char este mai bun decât varchar pentru datele care se schimbă frecvent. Acest lucru se datorează faptului că rândurile de date cu durată fixă nu sunt predispuse la fragmentare.
• Char va ocupa doar spațiul fix definit la declararea variabilei. Dar varchar va ocupa spațiul pe baza datelor introduse și va ocupa de asemenea 1 sau 2 octeți ca prefix de lungime.
• Dacă datele sunt mai mici de 255 de caractere, este alocat un octet și dacă datele sunt mai mari de 255 caractere sunt rezervate 2 octeți. Dacă folosim un char pentru a stoca un steag de "Y" și "N", va folosi un octet pentru a stoca, dar atunci când vom folosi varchar va dura două octeți pentru a stoca steagul, inclusiv un octet suplimentar ca prefix de lungime.
Rezumat:
Char și varchar sunt cele mai utilizate tipuri de date de caractere disponibile în bazele de date. Char este folosit pentru a stoca un șir cu o lungime fixă în timp ce varchar este folosit pentru stocarea șirurilor care au o lungime diferită. Pentru a obține o performanță mai bună din date, este mai important să alegeți tipurile de date corecte pentru câmpurile tabelelor din baza de date. Este mai convenabil să utilizați cele mai mici tipuri de date care pot stoca corect datele, deoarece acestea necesită mai puțin spațiu din memorie.
Imagini Amabilitate: varchar prin Wikicommons (Domeniul Public)