Char mod Varchar
Char og Varchar er almindeligt anvendte karakterdatatyper i databasesystemet, der ligner hinanden, selvom der er forskelle mellem dem, når det kommer til lagringskrav. I databasedesign er der mange datatyper, der bruges. Ud af dem får karakterdatatyper et mere fremtrædende sted, da de bruges til at gemme en masse information i forhold til tal. Tegnedatatyper bruges til lagring af tegn eller alfanumeriske data i strenge. Typen af databasetegnsæt defineres, når databasen oprettes. Igen er Char og Varchar ud af disse karakterdatatyper de almindeligt anvendte. Denne artikel forklarer, hvad disse to datatyper, char og varchar, er og forskellen mellem dem.
Hvad er Char?
ISO-definitionen af char er et tegn, og char-datatypen bruges til at gemme et tegn. Char (n) kan gemme n fast størrelse af tegn. Det maksimale antal tegn, som en tegn (n) kan indeholde, er 255 tegn, og en strenglængde skal være en værdi fra 1 til 8000. Char er halvtreds procent hurtigere end varchar, og derfor kan vi få en bedre ydelse, når vi arbejder med char. Char bruger statisk hukommelsesallokering ved lagring af data. Når vi vil opbevare strengene med en kendt fast længde, er det bedre at bruge char. Som et eksempel, når vi lagrer 'Ja' og 'Nej' som 'Y' og 'N', kan vi bruge datatypen char. Og også når vi gemmer en persons nationale identitetskortnummer med ti tegn, kan vi bruge datatypen som char (10).
Hvad er Varchar?
Som navnet antyder, kaldes varchar et variabelt tegn. Varchar bruges til at gemme alfanumeriske data, der har variable længder. Det maksimale antal tegn, som denne datatype kan rumme, er 4000 tegn, og den maksimale lagerstørrelse er 2 GB. Lagringsstørrelsen på varchar er den aktuelle længde af dataene plus to byte. Varchar er langsommere end char, og den bruger dynamisk hukommelsestildeling ved lagring af data. Vi kan bruge varchar til lagring af data såsom navne, adresser, beskrivelser osv. Ikke kun strenge, men også ikke-strengetyper såsom datatyper, "12. marts 2015", "2015-03-12" kan også gemmes i varchar-datatypen.
Hvad er forskellen mellem Char og Varchar?
• Selvom char og varchar er tegndatafelter, er char et datafelt med fast længde, og varchar er et datafelt med variabel størrelse.
• Char kan kun gemme ikke-Unicode-strengkarakterer i fast størrelse, men varchar kan gemme variable størrelser på strenge.
• Char er bedre end varchar for data, der ofte ændres. Dette skyldes, at den faste række af data ikke er udsat for fragmentering.
• Char optager kun det faste område, der er defineret, når variablen erklæres. Men varchar optager pladsen baseret på de data, der indsættes, og den optager også 1 eller 2 byte som længdepræfikset.
• Hvis dataene er mindre end 255 tegn, tildeles 1 byte, og hvis data er mere end 255 tegn, reserveres 2 byte. Hvis vi bruger en char til at gemme et flag med 'Y' og 'N', bruger den en byte til at gemme, men når vi bruger varchar, tager det to bytes at gemme flagget inklusive en ekstra byte som længdepræfikset.
Resumé:
Char mod Varchar
Char og varchar er den mest anvendte karakterdatatype, der findes i databaser. Char bruges til at gemme en streng med en fast længde, mens varchar bruges til at gemme strenge, der har varierende længde. For at få en bedre ydelse fra dataene er det vigtigere at vælge de korrekte datatyper til felterne i tabellerne i din database. Det er mere praktisk at bruge de mindste datatyper, der kan gemme data korrekt, fordi de tager mindre plads fra hukommelsen.
Billeder med tilladelse: Varchar via Wikicommons (Public Domain)