Peamised erinevused: Andmebaasisüsteemides nagu SQL Server, on Char ja Varchar mõlemad andmesidetüübid, kus char tegelikult viitab märgile ja Varchar viitab muutuvale tähemärgile. Neid mõlemaid kasutatakse salvestamaks stringi tüüpi väärtusi, mille maksimaalne pikkus on 8000 tähemärki. Sümbolite hoiustamise suurus on sama, mis deklareeritud, samas kui Varchari kuues faas sõltub sisestatud andmete baitidest.
Võtame näiteks - kui Char andmed on deklareeritud viisil: deklareerida test Char (20) ja test = "testimine", siis testimine võtab esimesed 7 baiti ja puhkus täidetakse tühjade andmetega. Teisest küljest, kui Varchari andmed on deklareeritud viisil: deklareerige test Varchar (20) ja test = “testimine”, siis see võtab ainult 7 + 2 baiti.
Char tuleks kasutada siis, kui muutuja pikkus on teada, samas kui Varchari tuleks kasutada ainult siis, kui pikkus on teadmata. Char on kiirem kui Varchar, kuna Varchari süsteem kulutab aega, et avastada aja lõppu. Teisest küljest, seda aega ei raisata Charis.
Char ja Varchari võrdlus:
Char | Varchar | |
Täisvorm | Märk | Muutuv märk (muutuva pikkusega märgi kontekstis) |
Tähendus | Kasutatakse fikseeritud pikkusega mitte-Unicode stringide andmete salvestamiseks | Kasutatakse muutuva pikkusega mitte-Unicode stringi andmete salvestamiseks |
Hoidmiseks kasutatavad bitid | 1 bait karakteri kohta | 1 bait ühe tähemärgi kohta ja 1 või 2 baiti pikkuse teabe hoidmiseks |
Rakendus | Kasutatakse selliste andmete salvestamiseks nagu telefoninumber jne (andmete sisestamine on järjepidev.) | Kasutatakse selliste andmete salvestamiseks nagu aadress (andmesisestused erinevad suuresti) |
Tingimus: sisendstring vähem kui deklareeritud baiti | Ruumi ilma märgita on polsterdatud tühikutega | Ilma tähemärgita ruumi ei lisata ühtegi märki |
Tingimus: sisesta string rohkem kui deklareeritud baiti | String kärbitakse deklareeritud baitidele | String kärbitakse deklareeritud baitidele. |