Erinevus Varchari ja Nvarchari vahel

Varchar vs Nvarchar
 

Varchari ja nvarchari erinevus näitab, kuidas andmeid andmebaasis hoitakse. Andmebaasisüsteem koosneb andmetest ja andmed on määratletud andmetüüpide järgi. Andmetüüp annab teada, millist väärtust veerg võib sisaldada. Igas andmebaasi tabeli veerus peab olema nimi ja andmetüüp. Täna on andmebaaside kujundamisel saadaval palju andmetüüpe. Nendest andmetüüpidest kasutatakse varchar ja nvarchar stringimärkide salvestamiseks. Varchar ja Nvarchar näivad olevat omavahel asendatavad. Kuid neil kahel tüübil on erinevad eelised ja neid kasutatakse erinevatel eesmärkidel.

Mis on Varchar?

Nagu nimigi ütleb, on varchar a erinev iseloom või erinev varjund. Varchari süntaks on VARCHAR [(n | max)]. Varchar salvestab ASCII andmeid, mis ei ole Unicode'i andmed, ja seda tüüpi andmeid kasutatakse tavapärases kasutuses. Varchar kasutab tähemärgi kohta ühte baiti. Samuti salvestab see andmebaasis iga stringi pikkuse. Varcharil on muutuv andmepikkus ja see võib talletada maksimaalselt 8000 mitte-Unicode-tähemärki. See andmetüüp on väga paindlik ja võtab vastu kõige erinevat tüüpi andmeid. Varchar ei luba salvestada stringi kasutamata osade jaoks tühje tähemärke. Varchari maksimaalne salvestusmaht on 2 GB ja andmete tegelik salvestusmaht on andmete tegelik pikkus pluss kaks baiti. Ehkki varchar on aeglasem kui char, kasutab see dünaamilist mälujaotust. Varchari andmetüübis saab salvestada mitte ainult stringe, vaid ka stringiväliseid tüüpe, näiteks kuupäeva tüüpe, „14. veebruar”, „12/11/2014”..

Mis on Nvarchar?

Nvarchar soovitab a rahvuslik erinev iseloom või erinev rahvus. Nvarchari süntaks on NVARCHAR [(n | max)]. Nvarchar saab salvestada erinevat tüüpi andmeid erineva pikkusega. Need on Unicode'i andmed ja mitmekeelsed andmed ning keeled topeltbaidiste sarnaste tähtedega hiina keeles. Nvarchar kasutab ühe märgi kohta 2 baiti ja see mahutab maksimaalselt 4000 tähemärki ja maksimaalselt 2 GB. Nvarchar käsitleb “” tühja stringina ja tähemärgipikkuseta. Salvestusruumi suurus on kahekordne tähemärkide arv pluss kaks baiti. Nvarcharis ei eemaldata väärtuse salvestamisel ja vastuvõtmisel lõppruume.

Mis vahe on Varcharil ja Nvarcharil?

Varchari ja nvarchari põhiline erinevus näitab, kuidas andmeid andmebaasis hoitakse.

• Varchar salvestab ASCII väärtused ja nvarchar Unicode märgid.

• Varchar kasutab ühe baiti tähemärgi kohta, nvarchar aga kaks baiti tähemärgi kohta.

• Varchar [(n)] salvestab muutuva pikkusega Unicode-tähemärke ja Nvarchar [(n)] salvestab muutuva pikkusega Unicode-märke.

• Varchar mahutab maksimaalselt 8000 mitte-Unicode-tähemärki ja nvarchar maksimaalselt 4000 Unicode- või Unicode-tähemärki.

• Varcharit on parem kasutada kohtades, kus mitte-Unicode-tähemärkidega muutujad asuvad. Nvarcharit kasutatakse kohtades, kus on Unicode-tähemärkidega muutujaid.

• Varchari salvestusmaht on baitide arv, mis võrdub märkide arvuga pluss kaks baiti, mis on reserveeritud nihutamiseks. Nvarchar kasutab baitide arvu, mis on võrdne kahekordse tähemärkide arvu ja kahe baitiga, mis on reserveeritud nihutamiseks.

• Kõik kaasaegsed opsüsteemid ja arendusplatvormid kasutavad Unicode'i sisemiselt. Seetõttu on andmetüüpide teisendamise vältimiseks ncharchar pigem kasutatud kui varchar.

Kokkuvõte:

Nvarchar vs Varchar

Varchar ja nvarchar on erineva pikkusega andmetüübid, mida kasutame erinevat tüüpi stringide salvestamiseks. Need andmetüübid on abiks kaasaegsetes opsüsteemides. Need andmetüüpide liigid väldivad andmete teisendamist ühelt tüübilt teisele vastavalt opsüsteemidele. Seetõttu aitavad varchar ja nvarchar programmeerijal Unicode'i ja mitte-Unicode'i stringe tuvastada ilma suuremate raskusteta. Need kaks andmetüüpi on programmeerimisel väga kasulikud.

Pildid viisakalt:

  1. Varchar autor Caius Durling (CC BY 2.0)