Char och Varchar är vanligtvis karaktärsdatatyper i databasystemet som liknar varandra men det finns skillnader mellan dem när det gäller lagringskrav. I databasdesign är det många datatyper som används. Av dessa får karaktärsdatatyper en mer framträdande plats eftersom de används för att lagra mycket information jämfört med siffror. Teckendatatyper används för att lagra tecken eller alfanumeriska data i strängar. Typ av databas teckenuppsättning definieras när du skapar databasen. Återigen, av dessa teckendatatyper är Char och Varchar de vanligt använda. Denna artikel förklarar vad dessa två datatyper, char och varchar är och skillnaden mellan dem.
ISO-definitionen av char är en karaktär och char data typen är brukade lagra en karaktär. Char (n) kan lagra n bestämd storlek på tecken. Det maximala antalet tecken som en char (n) kan rymma är 255 tecken och en stränglängd måste vara ett värde från 1 till 8000. Char är femtio procent snabbare än varchar och därför kan vi få bättre prestanda när vi arbetar med röding. Char använder statisk minnesallokering vid lagring av data. När vi vill lagra strängar med en känd fast längd är det bättre att använda rogen. Som exempel kan vi, när vi lagrar "Ja" och "Nej" som "Y" och "N", använda datatypen char. Och även när man lagrar personens nationella identitetskortnummer med tio tecken kan vi använda datatypen som char (10).
Som namnet antyder kallas varchar a variabel karaktär. Varchar används för att lagra alfanumeriska data som har olika längder. Det maximala antalet tecken som denna datatyp kan rymma är 4000 tecken och den maximala minnesstorleken är 2 GB. Lagringsstorleken för varchar är den faktiska längden av data plus två byte. Varchar är långsammare än char och använder dynamisk minnesallokering vid lagring av data. Vi kan använda varchar vid lagring av data som namn, adresser, beskrivningar etc. Inte bara strängar utan även strängtyper som datumtyper, "12 mars 2015", "12/03/2015" kan också lagras i varchar datatypen.
• Även om char och varchar är teckenfält är char ett datafält med fast längd och varchar är ett datafält med varierande storlek.
• Char kan bara lagra icke-Unicode-strängtecken i fast storlek, men varchar kan lagra variabla strängstorlekar.
• Char är bättre än varchar för data som ofta ändras. Detta beror på att raden med data i fast längd inte är utsatt för fragmentering.
• Char upptar endast det fasta utrymme som definieras vid deklarationen av variabeln. Men varchar kommer att ockupera utrymmet baserat på de data som är infogade och det kommer också att uppta 1 eller 2 byte som prefixet längd.
• Om data är mindre än 255 tecken, tilldelas 1 byte och om data är mer än 255 tecken reserveras 2 byte. Om vi använder en kar för att lagra en flagga med 'Y' och 'N' kommer den att använda en byte för att lagra, men när vi använder varchar kommer det att ta två byte för att lagra flaggan inklusive en extra byte som längd prefixet.
Sammanfattning:
Char och varchar är den mest använda teckendatatypen som finns tillgänglig i databaser. Char används för att lagra en sträng med en fast längd medan varchar används för att lagra strängar med varierande längd. För att få bättre prestanda från data är det viktigare att välja rätt datatyper för tabellerna i tabellerna i din databas. Det är bekvämare att använda de minsta datatyperna som kan lagra data på rätt sätt, eftersom de tar mindre utrymme från minnet.
Bilder Hälsovård: Varchar via Wikicommons (Public Domain)