Atšķirība starp varchar un nvarchar norāda, kā dati tiek glabāti datu bāzē. Datu bāzes sistēma sastāv no datiem, un datus nosaka datu tipi. Datu tips norāda, kāda veida vērtību kolonna var saturēt. Katrā datu bāzes tabulas kolonnā jābūt nosaukumam un datu tipam. Mūsdienās datu bāzu projektēšanā ir pieejami daudzi datu tipi. No šiem datu veidiem varchar un nvarchar tiek izmantoti, lai saglabātu virkņu rakstzīmes. Varčars un Nvarčars, šķiet, ir savstarpēji aizstājami. Bet šiem diviem veidiem ir atšķirīgas priekšrocības, un tos izmanto dažādiem mērķiem.
Kā norāda nosaukums, varchar ir a mainīgs raksturs vai mainīgs char. Varchar sintakse ir VARCHAR [(n | max)]. Varčārs glabā ASCII datus, kas nav Unicode dati, un to parasti izmanto normāli. Varčars katram rakstzīmei izmanto vienu baitu. Tas arī datu bāzē saglabā katras virknes garumu. Varčaram ir mainīgs datu garums, un tajā var saglabāt ne vairāk kā 8000 rakstzīmes, kas nav unikoda. Šis datu tips ir ļoti elastīgs, un tas pieņems visdažādākos datus. Varčars neļauj uzglabāt tukšas rakstzīmes nelietotām virknes daļām. Varchar maksimālais glabāšanas lielums ir 2 GB, un reālais datu glabāšanas lielums ir faktiskais datu garums plus divi baiti. Lai gan varchar ir lēnāks nekā char, tas izmanto dinamisko atmiņas sadalījumu. Varchar datu tipā var saglabāt ne tikai virknes, bet arī tādus, kas nav virknes, piemēram, datuma tipus, “14. februāris”, “12/11/2014”..
Nvarčars ierosina a nacionālais atšķirīgais raksturs vai nacionālais atšķirīgais šarms. Nvarčara sintakse ir NVARCHAR [(n | max)]. Nvarchar var saglabāt dažāda veida datus ar atšķirīgu garumu. Tie ir Unicode dati un daudzvalodu dati un valodas ar dubultbaitu rakstzīmēm ķīniešu valodā. Nvarčara izmanto 2 baitus par rakstzīmi, un tajā var saglabāt maksimālo 4000 rakstzīmju ierobežojumu un maksimālo garumu 2 GB. Nvarčars traktē “” kā tukšu virkni un nulles rakstzīmju garumu. Krātuves lielums ir divreiz lielāks par rakstzīmju skaitu plus divi baiti. Nvarčarā, saglabājot un saņemot vērtību, pēdējās vietas netiek noņemtas.
Galvenā atšķirība starp varchar un nvarchar norāda, kā dati tiek glabāti datu bāzē.
• Varchar saglabā ASCII vērtības un nvarchar saglabā Unicode rakstzīmes.
• Varčars izmanto vienu baitu uz rakstzīmi, savukārt nvarčārs izmanto divus baitus uz rakstzīmi.
• Varchar [(n)] glabā mainīga garuma rakstzīmes, kas nav Unicode, un Nvarchar [(n)] saglabā Unicode rakstzīmes ar mainīgu garumu.
• Varchar var saglabāt ne vairāk kā 8000 rakstzīmes, kas nav unikoda, un nvarchar var saglabāt ne vairāk kā 4000 rakstzīmes, kas nav unikoda un nav.
• Varchar ir labāk izmantot vietās, kur mainīgie ar rakstzīmēm, kas nav Unicode. Nvarčara tiek izmantots vietās, kur ir mainīgās ar Unicode rakstzīmēm.
• Varchar krātuves lielums ir baitu skaits, kas vienāds ar rakstzīmju skaitu plus divi baiti, kas rezervēti nobīdei. Nvarčars izmanto baitu skaitu, kas vienāds ar divkāršu rakstzīmju skaitu plus divi baiti, kas rezervēti nobīdei.
• Visas mūsdienu operētājsistēmas un attīstības platformas izmanto Unicode iekšēji. Tāpēc, lai izvairītos no datu tipu konvertēšanas, nvarchar tiek plaši izmantots nevis varchar.
Kopsavilkums:
Nvarčars pret Varčāru
Varchar un nvarchar ir dažāda garuma datu tipi, kurus mēs izmantojam, lai saglabātu dažāda veida virknes. Šie datu tipi ir noderīgi mūsdienu operētājsistēmās. Šīs datu tipu šķirnes ļauj izvairīties no datu konvertēšanas no viena veida uz citu atbilstoši operētājsistēmām. Tāpēc varchar un nvarchar palīdz programmētājam bez lielām grūtībām noteikt Unicode un Unicode virknes. Šie divi datu veidi ir ļoti noderīgi programmēšanā.
Attēli pieklājīgi: