Junior — Middle
Kāda ir atšķirība starp datu tipus CHAR un VARCHAR SQL un kādos gadījumos tos labāk izmantot?
sobes.tech AI
Atbilde no AI
SQL datu tipus CHAR un VARCHAR atšķiras pēc uzglabāšanas veida un atmiņas izmantošanas:
-
CHAR(n) — fiksēta garuma virkne. Ja virkne ir īsāka par n, tad atliekojošā vieta tiek aizpildīta ar tukšumiem. Izmanto, ja datu garums vienmēr ir tāds pats, piemēram, valsts kodi, statuss.
-
VARCHAR(n) — mainīga garuma virkne līdz n rakstzīmēm. Glabā tikai faktiskās rakstzīmes un nelielu servisa baitu garuma norādīšanai. Piemērotāks datiem ar mainīgu garumu, piemēram, vārdiem, adresēm.
Izmantošana:
- CHAR ir efektīvs fiksēta garuma datiem, jo tas tiek apstrādāts ātrāk un vieglāk indeksēts.
- VARCHAR ietaupa vietu mainīga garuma datiem, bet var radīt nelielas papildu izmaksas.
Piemērs:
CREATE TABLE users (
country_code CHAR(2), -- vienmēr 2 rakstzīmes
username VARCHAR(50) -- līdz 50 rakstzīmēm
);