Я разрабатываю свое приложение ASP.NET для SQL Server 2005. Веб-хост, который я собираюсь использовать, поддерживает только SQL Server 2008. Будут ли какие-либо изменения, которые я должен внести в свою базу данных, чтобы она работала с 2008? Моя база данных не делает ничего особенного, но есть ли подводные камни, на которые мне следует обратить внимание? Хозяин говорит, что никаких изменений вносить не должно, но я бы хотел убедиться от людей, у которых нет планов продаж :)
Спасибо
Вы можете сделать две вещи.
1) Взгляните на список Microsoft Устаревшие функции ядра СУБД в SQL Server 2005. Здесь перечислены все компоненты SQL Server 2005, которые Microsoft намерена прекратить использовать в следующей (SQL Server 2008) и будущих версиях SQL Server.
2) Установить Советник по обновлению Microsoft SQL Server 2008. Это проанализирует вашу установку SQL Server 2005 и сообщит вам, возникнут ли какие-либо проблемы при обновлении до SQL Server 2008.
Маловероятно, что возникнут проблемы, особенно если вы не делаете ничего особенного с точки зрения SQL, но это не гарантируется, поэтому я был бы склонен протестировать против SQL2008, чтобы быть уверенным - хотя бы в экспресс-версии (которая вам не будет стоить ).
Если вы не проведете повторное тестирование в 2008 году, по крайней мере убедитесь, что все новые базы данных имеют уровень совместимости 2005 года (90 - см. Вот для получения дополнительной информации). Уровень совместимости не гарантирует полного беспрепятственного выполнения проблем, хотя, если ваш код (намеренно или случайно) зависит от любого «неопределенного» поведения, которое всегда было таким же в SQL2005 (и, возможно, ранее), случайно.
Что касается «хост говорит, что не должно быть никаких изменений»: хост не может быть экспертом по SQL, это хостинговая компания, а не продвинутые администраторы баз данных или разработчики - самое большее, что они могут законно сказать с любой гарантией (IMO), это «у нас были клиенты, обновленные до 2008 года, и у них не было никаких проблем, о которых они нам сообщили». Также не в их интересах говорить что-то вроде «да, возможно, вам придется протестировать, чтобы убедиться в отсутствии проблем с SQL2008», если 2008 - это все, что они предлагают ...
Вы должны в идеале
Любые аномалии необходимо исследовать в индивидуальном порядке, чтобы увидеть, являются ли они причиной для беспокойства или требуют внесения изменений в ваше приложение.
После того, как вы внесли все очевидно необходимые изменения в свое приложение, сделайте вышеупомянутое СНОВА, и, если больше не будет обнаружено аномалий, вы можете быть достаточно уверены, что у вас не будет никаких проблем.
Конечно, я предполагаю, что ваше приложение имеет приличное покрытие в своем наборе автотестов; многие этого не делают, и в этом случае вам также придется проводить много ручного тестирования.
Я разрабатывал локально на 08 и создавал сценарии для своей базы данных, а затем запускал указанный сценарий на 05, чтобы воссоздать БД на нашем производственном сервере. Я избегаю использования улучшений 08 (эй, босс! Было бы неплохо обновить!), И у меня не было никаких проблем, поэтому я сомневаюсь, что возникнут проблемы при переходе в другую сторону.
Никаких проблем быть не должно.
Изменить: не сказать, что вы не должны тестировать, а просто о том, что нет никаких «ошибок». SQL 2k5 полностью совместим с 2k8.