Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
S’applique à :SQL Server 2017 (14.x) et versions plus récentes
SQL Server 2017 (14.x) déconseille l'utilisation de :
- Data Quality Services (DQS)
- Master Data Services (MDS)
Les fonctionnalités déconseillées dans les versions antérieures sont également déconseillées dans SQL Server 2017 (14.x). Pour plus d’informations sur les fonctionnalités déconseillées dans d’autres versions de SQL Server, consultez :
- Fonctionnalités du moteur de base de données déconseillées dans SQL Server 2025 (17.x)
- Fonctionnalités du moteur de base de données déconseillées dans SQL Server 2022 (16.x)
- Fonctionnalités dépréciées du moteur de base de données dans SQL Server 2019 (15.x)
- Fonctionnalités dépréciées du moteur de base de données dans SQL Server 2016 (13.x)
Recommandations en matière de dépréciation
Cet article décrit les fonctionnalités Moteur de base de données SQL Server dépréciées qui sont toujours disponibles dans SQL Server 2017 (14.x). Les fonctionnalités dépréciées ne doivent pas être utilisées dans de nouvelles applications.
Quand une fonctionnalité est marquée comme étant dépréciée, cela signifie que :
- La fonctionnalité est en mode de maintenance uniquement. Aucune nouvelle modification ne sera ajoutée, notamment aucune modification liée à l’interopérabilité avec de nouvelles fonctionnalités.
- Nous nous efforçons de ne pas retirer une fonctionnalité dépréciée des futures versions pour faciliter les mises à niveau. Cependant, dans de rares cas, nous pouvons décider d’arrêter (supprimer) définitivement une fonctionnalité de SQL Server si elle limite des innovations futures.
- Pour les nouveaux travaux de développement, n’utilisez pas de fonctionnalités dépréciées. Pour les applications existantes, prévoyez de modifier dès que possible celles qui utilisent actuellement ces fonctionnalités.
Vous pouvez surveiller l'utilisation de fonctionnalités déconseillées à l'aide du compteur de performance Objet SQL Server Fonctionnalités déconseillées et des événements de suivi. Pour plus d’informations, consultez Utiliser des objets SQL Server.
Vous pouvez également obtenir les valeurs de ces compteurs en exécutant l’instruction suivante :
SELECT * FROM sys.dm_os_performance_counters
WHERE object_name LIKE '%SQL%Deprecated Features%';
Notes
Cette liste est identique à la liste SQL Server 2016 (13.x). Aucune nouvelle fonctionnalité du moteur de base de données supprimée ou dépréciée n’a été annoncée pour SQL Server 2017 (14.x).
Fonctionnalités dépréciées dans la prochaine version de SQL Server
Les fonctionnalités suivantes du Moteur de base de données SQL Server ne seront plus prises en charge dans une version future de SQL Server. Évitez d’utiliser ces fonctionnalités dans vos nouveaux développements et modifiez dès que possible les applications qui y ont recours. La valeur Nom de la fonctionnalité apparaît dans les événements de trace comme ObjectName et dans les compteurs de performance et sys.dm_os_performance_counters comme nom d’instance. La valeur de l’ ID de la fonctionnalité apparaît dans les événements de suivi comme ObjectId.
Sauvegarde et restauration
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité | ID de la fonctionnalité |
|---|---|---|---|
RESTORE { DATABASE | LOG } WITH [MEDIA]PASSWORD continue d’être déconseillé.BACKUP{ DATABASE | LOG} WITH PASSWORD et BACKUP { } DATABASE | LOGWITH MEDIAPASSWORD sont supprimés. |
Aucun. |
BACKUP DATABASE ou BACKUP LOG WITH PASSWORDBACKUP DATABASE ou BACKUP LOG WITH MEDIAPASSWORD |
104 1:03 |
Niveaux de compatibilité
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité | ID de la fonctionnalité |
|---|---|---|---|
| Mise à niveau à partir de la version 100 (SQL Server 2008 (10.0.x) et SQL Server 2008 R2 (10.50.x)). | Lorsqu’une version de SQL Server n’est plus prise en charge, les niveaux de compatibilité de base de données associés sont marqués comme déconseillés. Cependant, nous continuons le plus longtemps possible d’assurer le support des applications certifiées sur tous les niveaux de compatibilité de base de données pris en charge de façon à faciliter la mise à niveau. Pour plus d’informations sur les niveaux de compatibilité, consultez le niveau de compatibilité ALTER DATABASE (Transact-SQL). | Niveau de compatibilité 100 de la base de données | 108 |
Objets de base de données
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité | ID de la fonctionnalité |
|---|---|---|---|
| Possibilité de retourner les jeux de résultats à partir de déclencheurs | Aucun | Le déclencheur retourne des résultats | 12 |
Chiffrement
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité | ID de la fonctionnalité |
|---|---|---|---|
| Le chiffrement à l'aide de RC4 ou RC4_128 est déconseillé et est planifié pour être supprimé dans la prochaine version. Les déchiffrements de RC4 et RC4_128 ne sont pas dépréciés. | Utilisez un autre algorithme de chiffrement, par exemple AES. | Algorithme de chiffrement déconseillé | 253 |
| L’utilisation de MD2, MD4, MD5, SHA et SHA-1 est dépréciée. | Utilisez SHA2_256 ou SHA2_512 à la place. Des algorithmes plus anciens continuent de fonctionner, mais ils déclenchent un événement de dépréciation. | Algorithme de hachage déconseillé | Aucun |
Serveurs distants
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité | ID de la fonctionnalité |
|---|---|---|---|
sp_addremoteloginsp_addserversp_dropremoteloginsp_helpremoteloginsp_remoteoption |
Remplacez les serveurs distants à l'aide de serveurs liés.
sp_addserver ne peut être utilisé qu’avec l’option locale. |
sp_addremoteloginsp_addserversp_dropremoteloginsp_helpremoteloginsp_remoteoption |
70 69 71 72 73 |
| @@remserver | Remplacez les serveurs distants à l'aide de serveurs liés. | Aucun | Aucun |
SET REMOTE_PROC_TRANSACTIONS |
Remplacez les serveurs distants à l'aide de serveurs liés. | SET REMOTE_PROC_TRANSACTIONS |
110 |
Transact-SQL
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité | ID de la fonctionnalité |
|---|---|---|---|
SET ROWCOUNTpour INSERT, UPDATEet instructions DELETE |
TOP mot-clé |
SET ROWCOUNT |
109 |
| Indicateur de table HOLDLOCK sans parenthèses. | Utilisez HOLDLOCK avec la parenthèse. | Indicateur de table HOLDLOCK sans parenthèses | 167 |
Fonctionnalités dépréciées dans une future version de SQL Server
Les fonctionnalités du moteur de base de données SQL Server décrites ci-dessous sont prises en charge dans la prochaine version de SQL Server. La version spécifique de SQL Server n’a pas été déterminée.
Sauvegarde et restauration
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| SAUVEGARDE { BASE DE DONNÉES | JOURNAL } SUR BANDE SAUVEGARDE { BASE DE DONNÉES | JOURNAL } VERS appareil_qui_est_une_bande |
BACKUP { DATABASE | LOG } VERS DISQUE SAUVEGARDE { BASE DE DONNÉES | JOURNAL } VERS device_that_is_a_disk |
BACKUP DATABASE ou LOG TO TAPE |
sp_addumpdevice 'tape' |
sp_addumpdevice 'disk' |
ADDING TAPE DEVICE |
sp_helpdevice |
sys.backup_devices |
sp_helpdevice |
Niveaux de compatibilité
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
sp_dbcmptlevel |
ALTER DATABASE... . SET COMPATIBILITY_LEVEL Pour plus d’informations, consultez ALTER DATABASE (Transact-SQL) pour le niveau de compatibilité. |
sp_dbcmptlevel |
| Niveau de compatibilité 110 et 120 de la base de données | Projetez de mettre à niveau la base de données et l'application avant la prochaine version. Cependant, nous continuons le plus longtemps possible d’assurer le support des applications certifiées sur tous les niveaux de compatibilité de base de données pris en charge de façon à faciliter la mise à niveau. Pour plus d’informations sur les niveaux de compatibilité, consultez le niveau de compatibilité ALTER DATABASE (Transact-SQL). | Niveau de compatibilité 110 de la base de données Niveau de compatibilité 120 de la base de données |
Classements
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Korean_Wansung_Unicode Lithuanian_Classic SQL_AltDiction_CP1253_CS_AS |
Aucun. Ces classements existent dans SQL Server 2005 (9.x), mais ils ne sont pas visibles via fn_helpcollations. | Korean_Wansung_Unicode Lithuanian_Classic SQL_AltDiction_CP1253_CS_AS |
| hindi Macédonien |
Ces classements existent dans SQL Server 2005 (9.x) et les versions ultérieures, mais ils ne sont pas visibles via fn_helpcollations. Utilisez à la place Macedonian_FYROM_90 et Indic_General_90. | hindi Macédonien |
| Azeri_Latin_90 Azeri_Cyrilllic_90 |
Azeri_Latin_100 Azeri_Cyrilllic_100 |
Azeri_Latin_90 Azeri_Cyrilllic_90 |
Types de données
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
sp_addtypesp_droptype |
CREATE TYPEDROP TYPE |
sp_addtypesp_droptype |
| Syntaxe detimestamp pour le type de données rowversion | Syntaxe du type de donnéesrowversion | TIMESTAMP |
| Possibilité d'insérer des valeurs NULL dans les colonnes timestamp . | Utilisez une DEFAULT valeur à la place. |
INSERT NULL en TIMESTAMP colonnes |
| Option de table 'text in row' | Utilisez les types de données varchar(max) , nvarchar(max) et varbinary(max) . Pour plus d’informations, consultez sp_tableoption. | Option de table text in row |
| Types de données : texte context image |
Utilisez les types de données varchar(max) , nvarchar(max) et varbinary(max) . | Types de données : text, ntext ou image |
Gestion de bases de données
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
sp_attach_dbsp_attach_single_file_db |
CREATE DATABASE instruction avec l’option FOR ATTACH . Pour reconstruire plusieurs fichiers journaux, lorsqu’un ou plusieurs ont un nouvel emplacement, utilisez l’option FOR ATTACH_REBUILD_LOG . |
sp_attach_dbsp_attach_single_file_db |
sp_certify_removablesp_create_removable |
sp_detach_db |
sp_certify_removablesp_create_removable |
sp_dbremove |
DROP DATABASE |
sp_dbremove |
sp_renamedb |
MODIFY NAME dans ALTER DATABASE |
sp_renamedb |
Objets de base de données
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
CREATE DEFAULTDROP DEFAULTsp_bindefaultsp_unbindefault |
DEFAULT mot clé dans CREATE TABLE et ALTER TABLE |
CRÉER_SUPPRIMER_PAR_DÉFAUTsp_bindefaultsp_unbindefault |
CREATE RULEDROP RULEsp_bindrule sp_unbindrule |
CHECK mot clé dans CREATE TABLE et ALTER TABLE |
CRÉER_SUPPRIMER_RÈGLEsp_bindrulesp_unbindrule |
sp_change_users_login |
Utiliser ALTER USER. |
sp_change_users_login |
sp_depends |
sys.dm_sql_referencing_entities et sys.dm_sql_referenced_entities |
sp_depends |
sp_getbindtoken |
Utilisez MARS ou les transactions distribuées. | sp_getbindtoken |
Options de la base de données
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
sp_bindsession |
Utilisez MARS ou les transactions distribuées. | sp_bindsession |
sp_resetstatus |
ALTER DATABASE SET { ONLINE | EMERGENCY } |
sp_resetstatus |
TORN_PAGE_DETECTION option de ALTER DATABASE |
PAGE_VERIFY TORN_PAGE_DETECTION option de ALTER DATABASE |
ALTER DATABASE WITH TORN_PAGE_DETECTION |
DBCC
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| DBCC DBREINDEX |
REBUILD option de ALTER INDEX. |
DBCC DBREINDEX |
| DBCC INDEXDEFRAG |
REORGANIZE option de ALTER INDEX |
DBCC INDEXDEFRAG |
| DBCC SHOWCONTIG | sys.dm_db_index_physical_stats |
DBCC SHOWCONTIG |
| DBCC PINTABLE DBCC UNPINTABLE |
Cette option n'a aucun effet. | DBCC [UN] PINTABLE |
Propriétés étendues
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Level0type = 'type' et Level0type = 'USER' pour ajouter des propriétés étendues aux objets de type de niveau 1 ou 2. | Utilisez Level0type = 'USER' uniquement pour ajouter une propriété étendue directement à un utilisateur ou un rôle. Utilisez Level0type = ' SCHEMA' pour ajouter une propriété étendue à des types de niveau 1 tels que TABLE OU VIEW, ou des types de niveau 2 tels que COLUMN ou TRIGGER. Pour plus d’informations, consultez sp_addextendedproperty. |
EXTPROP_LEVEL0TYPEEXTPROP_LEVEL0USER |
Procédures stockées étendues
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
xp_grantloginxp_revokeloginxp_loginConfig |
Utilisez CREATE LOGIN.Utiliser l’argument DROP LOGIN IsIntegratedSecurityOnly de SERVERPROPERTY |
xp_grantloginxp_revokeloginxp_loginConfig |
Programmation de procédures stockées étendues
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| srv_alloc srv_convert srv_describe srv_getbindtoken srv_attention_reçue gestionnaire_de_messages_srv srv_paramdata srv_paraminfo srv_paramlen srv_parammaxlen srv_paramname srv_paramnumber srv_paramset srv_paramsetoutput srv_paramstatus srv_paramtype srv_pfield srv_pfieldex srv_rpcdb srv_rpcname srv_rpcnumber srv_rpcoptions srv_rpcowner srv_rpcparams srv_senddone srv_sendmsg srv_sendrow srv_setcoldata srv_setcollen srv_setutype srv_willconvert srv_wsendmsg |
Utilisez l'intégration CLR à la place. | XP_API |
sp_addextendedprocsp_dropextendedprocsp_helpextendedproc |
Utilisez l'intégration CLR à la place. | sp_addextendedprocsp_dropextendedprocsp_helpextendedproc |
xp_grantloginxp_revokeloginxp_loginConfig |
Utilisez CREATE LOGIN.Utiliser l’argument DROP LOGIN IsIntegratedSecurityOnly de SERVERPROPERTY |
xp_grantloginxp_revokeloginxp_loginConfig |
Haute disponibilité
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| mise en miroir de bases de données | Groupes de disponibilité Always On Si votre édition de SQL Server ne prend pas en charge les groupes de disponibilité AlwaysOn, utilisez la copie des journaux de session. |
MIROIR_DE_BASE_DE_DONNÉES |
Options d'index
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
sp_indexoption |
ALTER INDEX |
sp_indexoption |
CREATE TABLE, ALTER TABLEou CREATE INDEX syntaxe sans parenthèses autour des options. |
Réécrivez l'instruction de manière à utiliser la syntaxe actuelle. | INDEX_OPTION |
Options d'instance
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
sp_configure option « Autoriser les mises à jour » |
Les tables système ne peuvent plus être mises à jour. La valeur n'a pas d'effet. |
sp_configure 'autoriser les mises à jour' |
sp_configure Options:serrures 'ouvrir des objets' 'définir la taille du jeu de travail' |
Désormais configuré automatiquement. La valeur n'a pas d'effet. |
sp_configure 'verrous'sp_configure 'ouvrir des objets'sp_configure 'définir la taille du jeu de travail' |
sp_configure option 'augmentation de priorité' |
Les tables système ne peuvent plus être mises à jour. La valeur n'a pas d'effet. Utilisez à la place l’option start /high … program.exe de Windows. |
sp_configure 'augmentation de priorité' |
sp_configure option 'remote proc trans' |
Les tables système ne peuvent plus être mises à jour. La valeur n'a pas d'effet. |
sp_configure 'remote proc trans' |
Serveurs liés
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Spécification du fournisseur SQLOLEDB pour les serveurs liés. | Microsoft OLE DB Driver pour SQL Server | SQLOLEDB pour les serveurs liés |
Métadonnées
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| FILE_ID INDEXKEY_PROPERTY |
FILE_IDEXsys.index_columns |
FILE_ID INDEXKEY_PROPERTY |
Services Web XML natifs
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
Instruction CREATE ENDPOINT ou ALTER ENDPOINT avec l’option FOR SOAP .sys.endpoint_webmethods sys.soap_endpoints |
Utilisez à la place WFC (Windows Communications Foundation) ou ASP.NET. | CREATE/ALTER ENDPOINTsys.endpoint_webmethodsEXT_soap_endpoints sys.soap_endpoints |
Autres
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| DB-Library SQL incorporé pour C |
Même si le moteur de base de données prend toujours en charge les connexions des applications existantes qui utilisent les API DB-Library et Embedded SQL, il n’inclut pas les fichiers ou la documentation nécessaires aux tâches de programmation dans les applications qui utilisent ces API. Une version future du moteur de base de données SQL Server n’intègre plus la prise en charge des connexions à partir des applications DB-Library ou Embedded SQL. N’utilisez pas DB-Library ni Embedded SQL pour développer de nouvelles applications. Supprimez toutes les dépendances sur DB-Library ou Embedded SQL lorsque vous modifiez des applications existantes. À la place de ces API, utilisez l’espace de noms SQLClient ou une API comme ODBC. SQL Server 2019 (15.x) n’inclut pas la DLL DB-Library nécessaire à l’exécution de ces applications. Pour exécuter des applications DB-Library ou Embedded SQL, vous avez besoin de la DLL DB-Library fournie dans SQL Server version 6.5, SQL Server 7.0 ou SQL Server 2000 (8.x). | Aucun |
Sécurité
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
Syntaxe ALTER LOGIN WITH SET CREDENTIAL |
Remplacé par la nouvelle ALTER LOGIN ADD et DROP CREDENTIAL la syntaxe |
ALTER LOGIN WITH SET CREDENTIAL |
sp_addapprolesp_dropapprole |
CREATE APPLICATION ROLEDROP APPLICATION ROLE |
sp_addapprolesp_dropapprole |
sp_addloginsp_droplogin |
CREATE LOGINDROP LOGIN |
sp_addloginsp_droplogin |
sp_addusersp_dropuser |
CREATE USERDROP USER |
sp_addusersp_dropuser |
sp_grantdbaccesssp_revokedbaccess |
CREATE USERDROP USER |
sp_grantdbaccesssp_revokedbaccess |
sp_addrolesp_droprole |
CREATE ROLEDROP ROLE |
sp_addrolesp_droprole |
sp_approlepasswordsp_password |
ALTER APPLICATION ROLEALTER LOGIN |
sp_approlepasswordsp_password |
sp_changedbowner |
ALTER AUTHORIZATION |
sp_changedbowner |
sp_changeobjectowner |
ALTER SCHEMA ou ALTER AUTHORIZATION |
sp_changeobjectowner |
sp_control_dbmasterkey_password |
Une clé principale doit exister et le mot de passe doit être correct. | sp_control_dbmasterkey_password |
sp_defaultdbsp_defaultlanguage |
ALTER LOGIN |
sp_defaultdbsp_defaultlanguage |
sp_denyloginsp_grantloginsp_revokelogin |
ALTER LOGIN DISABLECREATE LOGINDROP LOGIN |
sp_denyloginsp_grantloginsp_revokelogin |
| USER_ID | ID_PRINCIPAL_BASE_DE_DONNÉES | USER_ID |
sp_srvrolepermissionsp_dbfixedrolepermission |
Ces procédures stockées renvoient des informations qui étaient correctes dans SQL Server 2000 (8.x). Le résultat ne reflète pas les modifications apportées à la hiérarchie d’autorisations implémentée dans SQL Server 2008. Pour plus d'informations, consultez Autorisations des rôles serveur fixes. | sp_srvrolepermissionsp_dbfixedrolepermission |
GRANT ALLDENY ALLREVOKE ALL |
GRANT, et DENYREVOKEautorisations spécifiques. |
Autorisation ALL |
| Fonction intrinsèque PERMISSIONS | Interrogez sys.fn_my_permissions à la place. |
AUTORISATIONS |
| SETUSER | EXECUTE AS |
SETUSER |
Algorithmes rc4 et DESX de chiffrement |
Utilisez un autre algorithme, par exemple AES. |
DESX algorithme |
Options de configuration de serveur
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Audit C2 (option) Trace par défaut activée (option) Trace par défaut activée (option) |
common criteria compliance enabled (option de configuration de serveur) Aperçu des événements étendus |
sp_configure « mode d’audit c2 »sp_configure 'trace par défaut activée' |
Classes SMO
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Microsoft.SQLServer. Management.Smo.Information classe Microsoft.SQLServer. Gestion.Smo.Paramètres classe Microsoft.SQLServer.Management. Options de base de données de Smo classe Microsoft.SqlServer.Management.Smo. DéclencheurDdlBaseDeDonnées.PasPourRéplication propriété |
Microsoft.SqlServer. Management.Smo.Server classe * Microsoft.SqlServer. Management.Smo.Server (classe) Microsoft.SqlServer. Management.Smo.Database classe Aucun |
Aucun |
Agent de SQL Server
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Notificationnet send Notification par radiomessagerie |
Notification par e-mail Notification par e-mail |
Aucun |
SQL Server Management Studio
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Intégration de l’Explorateur de solutions dans SQL Server Management Studio | Aucun |
Fonctions et procédures stockées système
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
sp_db_increased_partitions |
Aucun. La prise en charge des partitions augmentées est disponible dans SQL Server 2019 (15.x). | sp_db_increased_partitions |
| fn_virtualservernodes fn_disquespartagésduserveur |
sys.dm_os_cluster_nodessys.dm_io_cluster_shared_drives |
fn_virtualservernodes fn_disquespartagésduserveur |
| fn_get_sql | sys.dm_exec_sql_text |
fn_get_sql |
sp_lock |
sys.dm_tran_locks |
sp_lock |
Tables système
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| sysaltfiles syscacheobjects syscolumns syscomments sysconfigures contraintes système syscurconfigs sysdatabases sysdepends sysdevices sysfilegroups fichiers système sysforeignkeys sysfulltextcatalogs sysindexes sysindexkeys syslockinfo syslogins membres du système messages du système sysobjects sysoledbusers sysopentapes sysperfinfo syspermissions sysprocesses sysprotects Références système sysremotelogins serveurs système systypes utilisateurs systèmes |
Vues de compatibilité. Pour plus d’informations, consultez Vues de compatibilité système. Important : Les vues de compatibilité n’exposent pas les métadonnées des fonctionnalités introduites dans SQL Server 2005 (9.x). Il est recommandé de mettre à niveau les applications pour pouvoir utiliser les affichages catalogue. Pour plus d’informations, consultez affichages catalogue système. |
sysaltfiles syscacheobjects syscolumns syscomments sysconfigures contraintes système syscurconfigs sysdatabases sysdepends sysdevices sysfilegroups fichiers système sysforeignkeys sysfulltextcatalogs sysindexes sysindexkeys syslockinfo syslogins membres du système messages du système sysobjects sysoledbusers sysopentapes sysperfinfo syspermissions sysprocesses sysprotects Références système sysremotelogins serveurs système systypes utilisateurs systèmes |
sys.numbered_proceduressys.numbered_procedure_parameters |
Aucun | procédures_numérotées paramètres_numérotés_de_procédure |
Procédures stockées, fonctions et affichages catalogue Trace SQL
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
sp_trace_createsp_trace_seteventsp_trace_setfiltersp_trace_setstatusfn_trace_geteventinfo fn_trace_getfilterinfo fn_trace_getinfo fn_trace_gettable sys.tracessys.trace_eventssys.trace_event_bindingssys.catégories_de_trace sys.trace_columns sys.trace_subclass_values |
Aperçu des événements étendus | sp_trace_createsp_trace_seteventsp_trace_setfiltersp_trace_setstatusfn_trace_geteventinfo fn_trace_getfilterinfo fn_trace_getinfo fn_trace_gettable sys.tracessys.trace_eventssys.trace_event_bindingssys.trace_categoriessys.trace_columnssys.trace_subclass_values |
Vues système
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
sys.sql_dependencies |
sys.sql_expression_dependencies |
sys.sql_dependencies |
Compression de table
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Utilisation du format de stockage vardecimal. | Le format de stockage vardecimal est déconseillé. La compression des données SQL Server 2019 (15.x) compresse les valeurs décimales ainsi que d’autres types de données. Nous vous recommandons d'utiliser la compression de données au lieu du format de stockage vardecimal. | Format de stockage vardecimal |
Utilisation de la sp_db_vardecimal_storage_format procédure. |
Le format de stockage vardecimal est déconseillé. La compression des données SQL Server 2019 (15.x) compresse les valeurs décimales ainsi que d’autres types de données. Nous vous recommandons d'utiliser la compression de données au lieu du format de stockage vardecimal. | sp_db_vardecimal_storage_format |
Utilisation de la sp_estimated_rowsize_reduction_for_vardecimal procédure. |
Utilisez plutôt la compression des données et la sp_estimate_data_compression_savings procédure. |
sp_estimated_rowsize_reduction_for_vardecimal |
Pointeurs de texte
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| ÉCRIRE UN TEXTE METTRE AJOUR TEXTE READTEXT |
Aucun | UPDATETEXT ou WRITETEXT READTEXT |
| TEXTPTR() TEXTVALID() |
Aucun | TEXTPTR TEXTVALID |
Transact-SQL
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
Séquence d’appel de fonction :: |
Remplacé par SELECT <column_list> FROM sys.<function_name>().Par exemple, remplacez SELECT * FROM ::fn_virtualfilestats(2,1)par SELECT * FROM sys.fn_virtualfilestats(2,1). |
Syntaxe d'appel de fonction '::' |
| Références de colonnes en 3 et 4 parties. | Les noms en deux parties sont la norme. | Nom de la colonne à plus de deux parties |
Chaîne entre guillemets utilisés comme alias de colonne pour une expression d’une SELECT liste :'string_alias' = expression |
expression [AS] column_alias expression [AS] [column_alias] expression [AS] « column_alias » expression [AS] 'column_alias' = column_aliasexpression |
Littéraux de chaîne comme alias de colonne |
| Procédures numérotées | Aucun. Ne pas utiliser. | ProcNums |
syntaxe table_name.index_name dans DROP INDEX |
<index_name> ON <table_name> syntaxe dans DROP INDEX. |
DROP INDEX avec un nom en deux parties |
| Pas d’instructions Transact-SQL se terminant par un point-virgule. | Terminez les instructions Transact-SQL par un point-virgule (;). |
Aucun |
GROUP BY ALL |
Utilisez une solution cas par cas personnalisée avec ou une UNION table dérivée. |
GROUP BY ALL |
ROWGUIDCOL en tant que nom de colonne dans les instructions DML. |
Utilisez $rowguid. | ROWGUIDCOL |
| IDENTITYCOL comme nom de colonne dans les instructions DML. | Utilisez $identity. | IDENTITYCOL |
| Utilisation de #, ## comme table temporaire et noms de procédure stockée temporaires. | Utilisez au moins un caractère supplémentaire. | '#' et '##' comme nom des tables temporaires et procédures stockées |
| Utilisation de @, ou @@ comme identificateurs Transact-SQL. | N’utilisez pas @ ou @@, ni des noms commençant par @@ comme identificateurs. | '@' et noms commençant par '@@' comme identificateurs Transact-SQL |
Utilisation du DEFAULT mot clé comme valeur par défaut. |
N’utilisez pas le mot DEFAULT comme valeur par défaut. |
DEFAULT mot clé comme valeur par défaut |
| Utilisation d'un espace comme séparateur entre les indicateurs de table. | Utilisez une virgule pour séparer les indicateurs de table. | Indicateurs de table multiples sans virgule |
| La liste de sélection d'une vue indexée d'agrégation doit contenir COUNT_BIG (*) dans le mode de compatibilité 90. | Utilisez COUNT_BIG (*). | Liste de sélection de vue d’index sans COUNT_BIG(*) |
| Application indirecte des indicateurs de table à un appel d'une fonction table à plusieurs instructions via une vue. | Aucun. | Indicateurs TVF indirects |
ALTER DATABASE syntaxe:MODIFY FILEGROUP READONLYMODIFY FILEGROUP READWRITE |
MODIFY FILEGROUP READ_ONLYMODIFY FILEGROUP READ_WRITE |
MODIFY FILEGROUP READONLYMODIFY FILEGROUP READWRITE |
SET ANSI_NULLS OFF et ANSI_NULLS OFF option de base de donnéesSET ANSI_PADDING OFF et ANSI_PADDING OFF option de base de donnéesSET CONCAT_NULL_YIELDS_NULL OFF et CONCAT_NULL_YIELDS_NULL OFF option de base de donnéesSET OFFSETS |
Aucun.ANSI_NULLSet ANSI_PADDING CONCAT_NULLS_YIELDS_NULL sont toujours définis sur ON.
SET OFFSETS ne sont pas disponibles. |
SET ANSI_NULLS OFFSET ANSI_PADDING OFFSET CONCAT_NULL_YIELDS_NULL OFFSET OFFSETSALTER DATABASE SET ANSI_NULLS OFFALTER DATABASE SET ANSI_PADDING OFFALTER DATABASE SET CONCAT_NULL_YIELDS_NULL OFF |
SET FMTONLY |
sys.dm_exec_describe_first_result_set, sys.dm_exec_describe_first_result_set_for_object, sp_describe_first_result_set et sp_describe_undeclared_parameters. | SET FMTONLY |
NOLOCK Spécification ou READUNCOMMITTED dans la FROM clause d’une ou UPDATE d’une DELETE instruction. |
Supprimez les NOLOCK indicateurs de table de READUNCOMMITTED la FROM clause. |
NOLOCK ou READUNCOMMITTED dans UPDATE ou DELETE |
Spécification d’indicateurs de table sans utiliser le WITH mot clé. |
Utiliser WITH. |
Indicateur de table sans WITH |
| INSERT_HINTS | INSERT_HINTS |
Outils
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Générateur de profils SQL Server pour la capture de trace | Utilisez le Générateur de profils d'événements étendus incorporé dans SQL Server Management Studio. | SQL Server Profiler |
| SQL Server Profiler pour Trace Replay | Vue d’ensemble de SQL Server Distributed Replay |
Objets TMO (Trace Management Objects)
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| L'espace de noms Microsoft.SqlServer.Management.Trace (contient les API pour les objets Trace et Replay SQL Server) | Configuration de trace : Microsoft.SqlServer.Management.XEvent Lecture de trace : Microsoft.SqlServer.XEvent.Linq Relecture de trace : None |
XML
| Fonctionnalité déconseillée | Remplacement | Nom de la fonctionnalité |
|---|---|---|
| Génération de schéma XDR en ligne | La directive XMLDATA à l’option FOR XML est déconseillée. Utilisez la génération XSD dans le cas des modes et RAW des AUTO modes. Il n’existe aucun remplacement pour la directive XMLDATA en mode EXPLICT. |
XMLDATA |
Notes
Le paramètre de cookie pour lequel il est actuellement documenté sous forme OUTPUT est la longueur maximale correcte.sp_setapprole Cependant, l’implémentation actuelle retourne varbinary(50) . Si les développeurs ont alloué varbinary(50) , l’application peut nécessiter des modifications si la taille de retour des cookies augmente dans une future version. Bien qu'il ne s'agisse pas d'un problème de suppression de fonctionnalités, ce phénomène est mentionné dans cette rubrique car les réglages de l'application sont similaires. Pour plus d’informations, consultez sp_setapprole.