Char та Varchar - це типи даних символів, які часто використовуються в системі баз даних, схожі, хоча між ними є відмінності, що стосуються вимог до зберігання. При проектуванні баз даних використовується багато типів даних. З них типи символьних даних отримують більш помітне місце, оскільки вони використовуються для зберігання великої кількості інформації порівняно з числами. Типи даних символів використовуються для зберігання символів або буквено-цифрових даних у рядках. Тип набору символів бази даних визначається при створенні бази даних. Знову ж таки, з цих типів даних символів Чар і Варчар - це найчастіше використовувані. У цій статті пояснюється, що таке два типи даних, char та varchar, та різниця між ними.
Визначення ISO - char характер і тип даних char є звик до зберігати персонаж. Char (n) може зберігати n фіксованого розміру символів. Максимальна кількість символів, яку може містити char (n), становить 255 символів, а довжина рядка повинна бути значенням від 1 до 8000. Char є на п’ятдесят відсотків швидше, ніж варчар, і, отже, ми можемо отримати кращі показники при роботі з char. Char використовує статичний розподіл пам'яті під час зберігання даних. Коли ми хочемо зберігати рядки з відомою фіксованою довжиною, краще використовувати char. Як приклад, зберігаючи "Так" і "Ні" як "Y" і "N", ми можемо використовувати тип даних char. А також, зберігаючи номер національної посвідчення особи з десятьма символами, ми можемо використовувати тип даних як char (10).
Як випливає з назви, варчар називається a змінний символ. Варчар використовується для зберігання буквено-цифрових даних, що мають різну довжину. Максимальна кількість символів, який може містити цей тип даних, - 4000 символів, а максимальний обсяг пам’яті - 2 Гб. Розмір пам’яті varchar - фактична довжина даних плюс два байти. Варчар повільніше, ніж char, і він використовує динамічний розподіл пам'яті під час зберігання даних. Ми можемо використовувати varchar під час зберігання таких даних, як імена, адреси, описи тощо. Не тільки рядки, але й нерядкові типи, такі як типи дат, "12 березня 2015", "12.03.2015", також можуть зберігатися в тип даних varchar.
• Хоча char та varchar - це дані даних символів, char - це дані даних фіксованої довжини, а varchar - це дані даних змінного розміру.
• Char може зберігати лише символи рядка Unicode фіксованого розміру, але varchar може зберігати змінні розміри рядків.
• Чарівник краще, ніж варчар для даних, які часто змінюються. Це пояснюється тим, що рядок даних фіксованої довжини не схильний до фрагментації.
• Char буде займати лише фіксований простір, який визначається при оголошенні змінної. Але varchar займе простір на основі вставлених даних, а також він займе 1 або 2 байти як префікс довжини.
• Якщо даних менше 255 символів, виділяється 1 байт, а якщо дані - понад 255 символів, 2 байти зарезервовано. Якщо ми використовуємо char для зберігання прапора 'Y' та 'N', він буде використовувати один байт для зберігання, але коли ми використовуємо varchar, для зберігання прапора знадобиться два байти, включаючи додатковий байт як префікс довжини.
Підсумок:
Char та varchar - це найбільш широко використовуваний тип даних символів, доступний у базах даних. Char використовується для зберігання струни з фіксованою довжиною, тоді як varchar використовується для зберігання струн, що мають різну довжину. Для отримання кращої продуктивності даних важливіше вибрати правильні типи даних для полів таблиць у вашій базі даних. Зручніше використовувати найменші типи даних, які можуть правильно зберігати дані, оскільки вони займають менше місця в пам'яті.
Зображення надано: Varchar через Wikicommons (Public Domain)