---
title: Certify your application for database compatibility mode, not SQL Server version
description: A common problem with data platform modernisation is gaining application vendor support for newer SQL Server versions, but that has been made easier since Microsoft’s change in position on the long-term use of database compatibility mode announced in 2018.
image: https://blog.coeo.com/hubfs/Baton%20image.jpg
---

[![](https://www.coeo.com/wp-content/themes/coeo/images/logo.svg)](https://blog.coeo.com/)

+44 (0)20 3051 3595 | [info@coeo.com](mailto:info@coeo.com) | [Client portal login](https://my.coeo.com)

# Certify your application for database compatibility mode, not SQL Server version

# The Coeo Blog

![Christian Bolton](https://blog.coeo.com/hubfs/Profile%20photos/ChristianCircle.jpg)

![Relay baton](https://blog.coeo.com/hs-fs/hubfs/Baton%20image.jpg?width=600&name=Baton%20image.jpg)

A common problem with data platform modernisation is gaining application vendor support for newer SQL Server versions, but that has been made easier since Microsoft’s change in position on the long-term use of database compatibility mode announced in 2018.

Microsoft recognised that the cost of testing against a SQL Server version was a blocker for many upgrades and instead advocates the use of database compatibility mode to ensure backwards compatibility for an application as a long-term, supported solution. This feature affects only the specific database on which it is enabled and will allow you to upgrade the SQL Server Engine to the latest version while keeping the application unaffected.

For example, SQL Server 2014 has a database compatibility level of 120 so if your application supports SQL Server 2014 then it will work exactly the same on SQL Server 2019 when you keep your database at compatibility level 120.

It’s not entirely bullet-proof as some breaking changes can’t be protected and discontinued features aren’t protected, but this won’t affect the majority of databases and will be picked up by a scan using the [Data Migration Assistant (DMA)](https://blogs.msdn.microsoft.com/datamigration/dma/) which replaces the SQL Server Upgrade Advisor.

The two main areas for concern with an upgrade are changes in T-SQL default behaviour and query plan stability. Database compatibility level was originally created to ensure that T-SQL didn’t change in behaviour between versions of SQL Server, but is now also used to disable newer optimizer changes that could cause unexpected query plan behaviour.

If you are an Independent Software Vendor (ISV) it would be helpful to your customers, and to the systems integrators that support them, if you certify your applications for a specific compatibility mode rather than SQL Server version so they can upgrade to later versions of SQL Server without chasing you to certify the version they’re deploying to.

It’s also a useful tip for Software-as-a-Service vendors as it gives you the opportunity to modernise your database infrastructure without introducing risk to your customer.

Upgrading to the latest compatibility level should ultimately be the end-goal as it opens up new features and optimizations for you to take advantage of, but it’s not always possible in a timeframe that works with your or your customer’s plans. Maintaining an older compatibility level gives you and them the opportunity to decouple application testing from platform upgrades and maybe spread some joy along the way 😊

Read more about compatibility levels here: [https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-database-transact-sql-compatibility-level?view=sql-server-2017#compatibility-levels-and-sql-server-upgrades](https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-database-transact-sql-compatibility-level?view=sql-server-2017#compatibility-levels-and-sql-server-upgrades)

[![Develop your SQL Server knowledge - learn from Coeo's experts](https://no-cache.hubspot.com/cta/default/3356718/62303294-d434-40f7-99f5-52d76ee74f7c.png)](https://cta-redirect.hubspot.com/cta/redirect/3356718/62303294-d434-40f7-99f5-52d76ee74f7c)

### Subscribe to Email Updates

## Related posts

---

### [Troubleshooting Ola Hallengren’s Maintenance Solution](https://blog.coeo.com/troubleshooting-ola-hallengrens-maintenance-solution)

### [Domain-Independent Windows Failover Cluster for SQL Server AlwaysOn Availability Group](https://blog.coeo.com/domain-independent-windows-failover-cluster-for-sql-server-alwayson-availability-group)

### [SQLBits 2022 session - Field Testing Ola Hallengren’s Maintenance Solution](https://blog.coeo.com/sqlbits-2022-session-field-testing-ola-hallengrens-maintenance-solution)

### [Windows Active Directory Detached Cluster with SQL Server Basic Availability Group](https://blog.coeo.com/advanced-sql-server-windows-cluster-options)

![](https://www.coeo.com/wp-content/uploads/2016/12/logo-invert.png)

+44 (0)20 3051 3595 | info@coeo.com

## Contact Us

By clicking submit below, you consent to allow Coeo to store and process the personal information submitted above to provide you the content requested.

You may unsubscribe from these communications at any time. For more information on how to unsubscribe and our commitment to your privacy, please review our **[Privacy Policy](https://www.coeo.com/privacy/)**.

## Upcoming Events

[See all events](https://www.coeo.com/events/)

#### NOW Building, Thames Valley Park Drive, Reading, RG6 1RB

[![](https://www.coeo.com/wp-content/themes/coeo/images/social-glass.png)](https://www.glassdoor.co.uk/Overview/Working-at-Coeo-EI_IE959052.11,15.htm)[![](https://www.coeo.com/wp-content/themes/coeo/images/social-in.png)](https://www.linkedin.com/company/coeo-ltd)[![](https://www.coeo.com/wp-content/themes/coeo/images/social-twitter.png)](https://twitter.com/CoeoLtd)[![](https://www.coeo.com/wp-content/themes/coeo/images/social-fb.png)](https://www.facebook.com/coeoltd/)

![](https://www.coeo.com/wp-content/themes/coeo/images//menu-icon.png)

![](https://www.coeo.com/wp-content/themes/coeo/images//menu-close.png)

![](https://www.coeo.com/wp-content/uploads/2016/12/logo-invert.png)

+44 (0)20 3051 3595 | [info@coeo.com](mailto:info@coeo.com)

- [Solutions](https://www.coeo.com/solutions/)
- [Next Steps](https://www.coeo.com/next-steps/)
- [Dedicated Support](https://www.coeo.com/dedicated-support/)
- [Case studies](https://www.coeo.com/case-studies/)
- [Technologies](https://www.coeo.com/solutions/technologies/)

- [Industries](https://www.coeo.com/industries/)
- [Finance](https://www.coeo.com/industries/finance/)
- [Retail](https://www.coeo.com/industries/retail/)
- [Technology](https://www.coeo.com/industries/technology/)

- [The Team](https://www.coeo.com/people/)
- [Join Us](https://www.coeo.com/careers/)
- [Graduate Programme](https://www.coeo.com/graduate-programme/)

- [About Coeo](https://www.coeo.com/about-coeo/)
- [The Coeo Blog](https://www.coeo.com/blog/)
- [Contact us](https://www.coeo.com/contact-us/)
- [Privacy Notice](https://www.coeo.com/privacy/)
- [Cookie Policy](https://www.coeo.com/privacy#Cookie_Policy)

- [Events](https://www.coeo.com/events)

Sign up to our newsletter ![go arrow](https://www.coeo.com/wp-content/themes/coeo/images/newsletter-go.png)

 Back to top