nvarchar(max) vs nvarchar(n)

6

Програмування Asp.net
Попередній

Наступний

На це питання ніхто точно відповісти не може. Але можна вимовити думки в слух:

  • Для чого був створений nvarchar(n)? Чому в MSSQL не створити nvarchar, без будь-яких натяків на розмір (як наприклад, string в C#)? Значить виходить комусь (а имено MSSQL) цей розмір потрібен, значить краще його встановити.
  • Є ще такий плюс, це індексація. nvarchar(max) НЕ індексується, тобто пошук по цьому полю не прискорити. Максимальний розмір який можна проіндексувати nvarchar(450) (можу помилятися)
  • Як відомо в світі все звичайно, особливо час. Так з поле nvarchar(max), теж має свій кінцевий розмір. Який саме сказати не можу, це пов’язано з налаштуваннями BD.
  • Не дивлячись на все вище перераховане, я більше користуюся nvarchar(max), тим самим я оберігаю себе від проблем, які можуть виникнути, якщо я не вгадав розмір.

    І ще, якщо ніхто чітко не може відповісти, що краще, значить різниці немає.