Изменение значения столбца ntext
У меня есть столбец в ntext, который содержит большие строки Unicode длиной более 4000 символов. Мне нужно обновить / изменить данные строк столбца в SQL, но я понятия не имею, как это сделать. Я пробовал nvarchar(max) в качестве буфера, но он усекает данные до 4000 символов.
Может ли кто-нибудь помочь мне дать мне подсказку, идею или решение проблемы, потому что я действительно потерян в этом?
2 ответа
nvarchar(max) не усекается.
У вас есть промежуточный nvarchar(4000) (или более короткий) где-то, обычно строковая константа. См. Мой ответ для получения дополнительной информации: для Nvarchar(Max) я получаю только 4000 символов в TSQL?
Если вы можете привести к nvarchar(max), то это означает, что вы также можете изменить свои столбцы... Как сказал Ремус, ntext устарела.
Замените устаревший тип NTEXT более подходящим NVARCHAR(MAX) и используйте столбец UPDATE SET. Синтаксис записи см. В разделе " Использование типов данных больших значений".
Старый тип NTEXT поддерживает UPDATETEXT, но сейчас устарел.