Подтвердить что ты не робот

Длина данных в столбце ntext?

Как узнать длину и размер данных в столбце ntext в SQL? - Это длиннее 8000 байт, поэтому я не могу отнести его к varchar. Спасибо.

4b9b3361

Ответ 1

Используйте DataLength()

SELECT * FROM YourTable WHERE DataLength(NTextFieldName) > 0 

Ответ 2

Ключ в вопросе: используйте DATALENGTH(). Обратите внимание, что это имеет другое поведение для LEN():

SELECT LEN(CAST('Hello   ' AS NVARCHAR(MAX))), 
       DATALENGTH(CAST('Hello   ' AS NVARCHAR(MAX))), 
       DATALENGTH(CAST('Hello   ' AS NTEXT))

возвращает 5, 16, 16.

Другими словами, DATALENGTH() не удаляет конечные пробелы и возвращает количество байтов, тогда как LEN() обрезает конечные пробелы и возвращает количество символов.

Ответ 3

Select Max(DataLength([NTextFieldName])) from YourTable