Как сделать приложение полностью совместимым с SQL Server 2005?

StackOverflow https://stackoverflow.com/questions/242875

Вопрос

У нас есть приложение, использующее MSSQL, когда мы переходим на 2005 год, в основном мы рекомендуем нашему клиенту применить пакет обратной совместимости, и это так, но кто-то спрашивает меня, что делать, чтобы быть на 100% совместимым с 2005. Я думал о 1. Уровень совместимости: SQL Server 2005 (90) 2. Удалите все ссылки на DMO и замените SMO 3. Подключитесь с помощью ADO

Я не уверен, что это правильный ответ.

Нет правильного решения

Другие советы

На самом деле вы говорите о двух разных вещах.

Одним из них является обновление базы данных до уровня SQL 2005, чтобы можно было использовать функции, доступные только там. Это можно легко сделать, установив уровень совместимости. Однако в этом случае клиенты SQL 2000 могут иметь проблемы с ним.

Второй - обновить приложение, чтобы использовать только библиотеки, связанные с SQL 2005. Это также легко, в основном шаги, которые вы написали. В этом случае ваше приложение может также работать с базами данных SQL 2000 (кроме случаев, когда вы используете какую-то особенность SQL 2005), поскольку библиотеки обратно совместимы.

Конечные слова: вы в любом случае совместимы с SQL 2005, единственное отличие состоит в том, что вы можете использовать SQL 2005 определенные функции или нет.

Почему бы не перейти на SQL 2008 уже? Здесь есть тема об этой теме.

Чтобы узнать, действительно ли вы совместимы, единственный способ выяснить это - запустить приложение на сервере SQL 2005 без пакета обратной совместимости. Если у вас есть исчерпывающий набор тестов, это очень поможет, но вам нужно убедиться, что весь ваш бэкэнд-код работает и работает нормально.

Я работал над приложением, в котором использовались SQL 2000 и SQL 2005, и единственными частями приложения, которым требовалось переключение версий, был какой-то зашифрованный код отражения, который должен был использовать системные таблицы SQL Server для динамического обнаружения таблиц во время выполнения. Мы решили использовать динамический SQL, но вам нужно сделать правильный выбор для вашего приложения и пользователей.

Ваше приложение на 100% совместимо с SQL 2005, если оно будет корректно работать в готовой конфигурации SQL 2005 без применения каких-либо исправлений обратной совместимости.

Если у вас есть какие-либо пакеты DTS, их необходимо преобразовать в пакеты служб SSIS, чтобы они были полностью совместимы.

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top