Ответ 1
Режим совместимости позволяет пользователям перенести приложения с функциями, которые больше не совместимы с более новыми версиями SQL. Если у вас есть приложения, для которых функции больше не поддерживаются в sql 2008, вы хотите запустить их в режиме совместимости; в противном случае вы бы хотели использовать текущий режим sql. Наш бизнес запускает приложение, которое благодаря способу подключения к базе данных требует режима совместимости с SQL 2000; но он работает на сервере SQL 2012.
Конкретные функции в коде могут влиять на производительность, поскольку требуемая логика отличается, а исполнение отличается от других. Как очень обобщенное правило SQL-код, оптимизированный для функций на 2012,2008, будет быстрее, чем SQL 2000 или SQL 7, поскольку они добавили такие вещи, как CTE и un/pivot, которые позволяют упростить кодирование.