Відмінності між Варчаром та Нварчаром

Варчар проти Нварчар

Варчар - це коротка назва поля змінних символів. Символи представляють дані невизначеної довжини. Варчар у фактичному розумінні - це тип стовпців даних, який знаходиться в системах управління базами даних. Розмір поля стовпців Varchar може змінюватись, залежно від бази даних, яка розглядається.

В Oracle 9i поле має максимальний ліміт до 4000 символів. MySQL має обмеження даних 65,535 для рядка, а сервер Microsoft SQL 2005 поставляється з полевим обмеженням 8000. Цей показник може збільшитися на сервері Microsoft SQL, коли використовується Varchar (max), піднявшись до 2 гігабайт. З іншого боку, Nvarchar - це стовпець, який може зберігати будь-яку довжину даних Unicode. Кодова сторінка, якої повинен дотримуватися Нварчар, - це 8-бітове кодування. Максимальний розмір для Varchar - 8000, тоді як максимальний розмір для NVarchar - 4000. Це фактично означає, що в одному стовпчику Varchar може бути не більше 8000 символів, а в одному стовпчику Nvarchar може бути не більше 4000 символів. Перевищення значень стовпців стає величезною проблемою і навіть може спричинити серйозні проблеми, оскільки рядки не можуть охоплювати декілька сторінок, за винятком SQL-сервера 2005 року, а обмеження повинні дотримуватися або призведе до помилок або усікання…

Однією з головних відмінностей між Варчаром та Нварчаром є використання менше місця у Варчарі. Це тому, що в Nvarchar використовується Unicode, який через клопотання кодування специфіки займає більше місця. Для кожного символу, що зберігається, для Unicode потрібні два байти даних, і саме це може призвести до того, що значення даних буде вищим у порівнянні з даними, які не використовуються Unicode, які використовує Varchar. Варчару, з іншого боку, потрібен лише один байт даних для кожного символу, який зберігається. Однак, що ще важливіше, хоча використання Unicode займає більше місця, воно вирішує проблеми, що виникають із несумісністю кодової сторінки, яку потрібно вирішити вручну.

Таким чином, простір може бути проігноровано у перевазі за коротший час, який потрібно Unicode, щоб виправити виникаючі несумісності. Крім того, вартість дисків та пам'яті також стала цілком доступною, що забезпечує простору простору, але тим більше часу, який потрібно для вирішення виникаючих проблем з Varchar, не можна так легко відмовити..

Усі платформи розробки використовують внутрішні сучасні операційні системи, що дозволяє Unicode працювати. Це означає, що Нварчар зайнятий частіше, ніж Варчар. Уникає кодування перетворень, скорочуючи час, необхідний для читання та запису в базу даних. Це також суттєво зменшує помилки, оскільки відновлення помилок конверсії, які виникають, стають простою проблемою, яку потрібно вирішити.

Перевага використання Unicode також стосується людей, які використовують інтерфейси додатків ASCII, оскільки база даних добре реагує, особливо Операційна система та алгоритми коаліції баз даних. Дані Unicode уникають проблем, пов’язаних з перетвореннями, і дані завжди можуть бути перевірені, якщо вони обмежені 7-бітовим ASCII, незалежно від застарілої системи, яку потрібно підтримувати.

Підсумок

Варчар і Нварчар мають різні типи символів. Варчар використовує дані Unicode, тоді як Nvarchar використовує дані Unicode.

І Varchar, і Nvarchar мають різні типи даних, яких слід дотримуватися. Варчар зберігає дані лише в 1-байтній послідовності, а Нварчар зберігає дані в 2-х байтах для кожного символу

Максимальна довжина також змінюється. Довжина Варчара обмежена до 8000 байт, а межа для Nvarchar - 4000 байт.

Це пояснюється тим, що розмір пам’яті у Varchar є більш простим на відміну від даних Unicode, які використовує Nvarchar.