Преимущества использования nvarchar (MAX) заключаются в том, что вы можете запускать такие функции, как Replace, Left, Len и т.д. на nvarchar (MAX), но не на ntext. ntext локальные переменные также не могут быть созданы в хранимых процедурах, однако nvarchar (MAX) может.
ntext также может быть устаревшим в будущем в пользу nvarchar (MAX):
Значение по умолчанию для NVARCHAR (MAX) - это сохранение его текстового значения в структуре таблицы, если текст не превышает 8000 байт (это 4000 двухбайтовых символов), после чего он ведет себя как NTEXT и сохраняет текстовое значение в LOB и сохраняет указатель на текст в таблице, что дает гораздо худшую производительность.
Короче говоря, перейдите к NVARCHAR(4000), если он в порядке, чтобы потерять байты длиной более 8K.