Parcours éditorial — Annexe · Technique · Partie 1/1
Note technique Azure SQL — hors parcours IA/automatisation.
Pour utiliser une syntaxe SQL plus récente dans Azure SQL, ce n'est pas la version du serveur qui compte — c'est le niveau de compatibilité.
Un matin, un développeur de mon équipe m'a demandé quelle était la version SQL d'une base de production pour savoir s'il pouvait utiliser une syntaxe plus récente. La réponse n'était pas aussi simple qu'il l'espérait — surtout sur Azure SQL Database, où les numéros de version ne correspondent pas aux étiquettes SQL Server on-premise.
Note : Les niveaux de compatibilité et les valeurs par défaut Azure ont évolué depuis la rédaction initiale. Vérifiez la documentation Microsoft avant de modifier la production.
En bref
- La version dans l'Explorateur d'objets SSMS et
SELECT @@VERSIONpeuvent différer sur Azure SQL - Le niveau de compatibilité détermine quelle syntaxe T-SQL est disponible — pas l'étiquette de version
- Niveaux 100–140 = SQL Server 2008 à 2017 ; des niveaux plus récents existent (150, 160, etc.)
- Vérifiez toujours le niveau de compatibilité avant d'adopter une syntaxe en production
Comment obtenir la version — et pourquoi les résultats divergent
Dans SQL Management Studio, la version apparaît dans l'Explorateur d'objets :

Dans cet exemple, la version est 12.0.2000.8 — interprétable comme SQL Server 2014.
Référence : Comment déterminer la version de SQL Server
Avec SELECT @@VERSION, le résultat peut différer :

Ici, on pourrait croire à SQL Server 2016. Les numéros de version physique et Azure ne sont pas les mêmes.
Ce qui compte vraiment : le niveau de compatibilité
| Niveau | SQL Server / Azure SQL Database |
|---|---|
| 100 | SQL Server 2008 |
| 110 | SQL Server 2012 |
| 120 | SQL Server 2014 |
| 130 | SQL Server 2016 |
| 140 | SQL Server 2017 |
Référence : Default compatibility level 140 for Azure SQL databases
Vérifier le niveau de compatibilité
SELECT name, compatibility_level
FROM sys.databases
WHERE name = DB_NAME();
Testez toujours en non-production avant de changer le niveau. Certains plans de requête et fonctionnalités dépréciées se comportent différemment selon le niveau.
Cette note est hors parcours principal Opérations → Automatisation → IA → Données — mais la clarté plateforme évite la dette technique qui alimente le travail non planifié.
Où vous en êtes
Note Annexe · Technique autonome — pas de série numérotée. Revenez au parcours via le guide de lecture, ou explorez Le coût caché de la dette technique.
Vous travaillez sur une migration ou une modernisation de requêtes? Échangeons.
