Преобразование nvarchar (4000) к nvarchar (макс.)

У нас есть несколько таблиц в нашей базе данных SQL Server (2005 и 2008) со столбцами, определенными как nvarchar (4000). Мы иногда должны мочь хранить больше данных, чем это и рассмотреть для использования nvarchar (макс.) вместо этого. Теперь к вопросам.

  1. Есть ли какие-либо последствия производительности, о которых мы должны знать?
  2. Действительно ли безопасно использовать, "изменяют таблицу", чтобы сделать фактическую миграцию или есть ли иначе?
  3. Что-либо еще, что мы должны знать, прежде чем мы преобразуем?

Отношения Johan

7
задан Johan Hammar 2 June 2010 в 13:42
поделиться

2 ответа

Нам также приходилось делать это в нескольких местах

  1. Мы не видели никаких падений производительности, прошло 5 недель с момента изменения
  2. 'Alter table' is хорошо, пока таблица не записывается во время преобразования
  3. Убедитесь, что у вас есть резервная копия на всякий случай, и в зависимости от количества данных в таблице это может занять некоторое время
9
ответ дан 7 December 2019 в 01:16
поделиться

Если текст не помещается на странице с остальными данными, текст будет сохранен на другой странице. Это вызывает чтение дополнительной страницы базы данных. Таким образом, производительность может / будет ниже. Возможно, в системах с большой нагрузкой и очень ограниченным временем отклика.

Студия управления SQL Server, вероятно, переименует текущую таблицу, создаст новую с новым макетом, скопирует данные, удалит старую таблицу. Это может быть медленным.

Я не знаю, сработает ли таблица изменений.

1
ответ дан 7 December 2019 в 01:16
поделиться
Другие вопросы по тегам:

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