Ограничение размера NVARCHAR в SQLServer?

это решение сработало для меня ... попробовал это для iOS 7

[self.navigationController.navigationBar setShadowImage:[UIImage new]];
11
задан kjv 28 May 2009 в 11:16
поделиться

6 ответов

NVARCHAR (MAX) намного лучше справляется с меньшими данными, чем старый тип данных NTEXT, однако NVARCHAR (n) всегда будет более эффективным в некоторых областях.

В качестве По общему правилу, использование типа данных, наилучшим образом представляющего хранимые вами данные, почти всегда является наилучшей практикой.

7
ответ дан 3 December 2019 в 06:22
поделиться

Есть много последствий для производительности . В частности, в скалярной UDF для заполнения строк общего назначения я заметил огромные различия в производительности, когда вывод был объявлен как VARCHAR (MAX), хотя входные данные никогда не были> 40 символов. Переход на VARCHAR (50) сделал ОГРОМНОЕ улучшение.

5
ответ дан 3 December 2019 в 06:22
поделиться

Просто чтобы дополнить все остальные ответы: будьте также осторожны со сценариями, в которых данные могут поступать из других источников, таких как - в качестве примера - текстовые файлы, импортированные извне ваших приложений; это может обойти любую логику приложения, если вы не дублируете ее в процедурах импорта ...

3
ответ дан 3 December 2019 в 06:22
поделиться

You shouldn't set all your fields to NVARCHAR(MAX) if you know they will never hold more than a finite number of characters due to the way SQL stores this kind of data - data small enough to fit in the page will be stored in the page, but when it grows too large it will be moved off the page and be stored separately.

Also, are you sure you need NVARCHAR as this stores unicode data which takes up twice the space of standard VARCHAR? If you know you will be using standard characters then use VARCHAR instead.

Slo, think of the uses of your application. If you have an address field that has no theoretical limit on its size, how would you print it on your envelope? You say you will implement logic in the front end applciation, but why still allow the database to have data that is too large? And what happens if data gets into the database that breaks the logic in your front end?

3
ответ дан 3 December 2019 в 06:22
поделиться

Главный недостаток заключается в том, что NVARCHAR (MAX) нельзя индексировать с помощью простых индексов.

Также есть некоторые проблемы с переменными типа NVARCHAR (MAX ) и с выполнением функций, анализирующих эти переменные.

Если вы просто хотите сохранять и извлекать данные как есть, а не анализировать их на стороне SQL Server , тогда NVARCHAR (MAX) в порядке.

1
ответ дан 3 December 2019 в 06:22
поделиться

Установка ограничения имеет побочный эффект некоторой проверки максимальной длины

0
ответ дан 3 December 2019 в 06:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: