SQL Server 2008 R2 переход на 2016 - PullRequest
0 голосов
/ 20 мая 2019

Я перевожу свой SQL Server 2008 R2 на SQL Server 2016.

В рамках миграции я обнаружил несколько проблем перед миграцией, таких как «Обнаружено неквалифицированное объединение» и «Типы данных ntext, text и image устарели в 2016 году».

Как решить эти две проблемы? Или я могу продолжить и перенести свои базы данных, игнорируя эти проблемы? Любая помощь по миграции SQL Server 2008 R2 на 2016 год будет полезной. Спасибо!

Я взял резервные копии баз данных и восстановил их в SQL Server 2016.

1 Ответ

0 голосов
/ 20 мая 2019

Это не обязательно огромные проблемы.

«Синтаксис неквалифицированных объединений» может вызвать проблемы с производительностью и является более серьезным из двух.

По сути, это старый синтаксис соединения:

select * from tableA, tableB where tableA.field1 = tableB.field1

Новый синтаксис выглядит так:

select * from table A inner join tableB on tableA.field1 = tableB.field1

Ваши варианты:

  • Не меняйте ничего и следите за производительностью
  • Измените уровень совместимости базы данных на 9.0 (вы пропустите некоторые новые функции и оптимизации)
  • Измените код на новый синтаксис (если это невыполнимо, по крайней мере, попросите разработчиков изменить его, как они делают новую разработку)

Вторая проблема - просто предупреждение о том, что эти типы данных могут быть удалены в будущих версиях SQL-сервера. Так что этот момент вы можете игнорировать на данный момент, но так как изменение сложно реализовать (миграция данных, тестирование, изменения кода), вам следует начать его с командой разработчиков, прежде чем они будут фактически удалены в будущей версии SQL.

...