ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)

S’APPLIQUE À : ouiSQL Server (à partir de 2016) ouiAzure SQL Database nonAzure SQL Data Warehouse nonParallel Data Warehouse APPLIES TO: yesSQL Server (starting with 2016) yesAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Cette instruction active plusieurs paramètres de configuration de base de données au niveau de chaque base de données.This statement enables several database configuration settings at the individual database level. Cette instruction est disponible dans Azure SQL DatabaseAzure SQL Database et dans SQL ServerSQL Server, à partir de SQL Server 2016 (13.x)SQL Server 2016 (13.x).This statement is available in Azure SQL DatabaseAzure SQL Database and in SQL ServerSQL Server beginning with SQL Server 2016 (13.x)SQL Server 2016 (13.x). Ces paramètres sont les suivants :Those settings are:

  • Effacer le cache de procédures.Clear procedure cache.
  • Affecter au paramètre MAXDOP une valeur arbitraire (1, 2, etc.) adaptée à la base de données primaire et affecter une autre valeur (telle que 0) à toutes les bases de données secondaires utilisées (par exemple, pour les requêtes de rapport).Set the MAXDOP parameter to an arbitrary value (1,2, ...) for the primary database based on what works best for that particular database and set a different value (such as 0) for all secondary database used (such as for reporting queries).
  • Définir le modèle d’estimation de la cardinalité de l’optimiseur de requête indépendant de la base de données au niveau de compatibilité.Set the query optimizer cardinality estimation model independent of the database to compatibility level.
  • Activer ou désactiver la détection de paramètres au niveau de la base de données.Enable or disable parameter sniffing at the database level.
  • Activer ou désactiver les correctifs d’optimisation des requêtes au niveau de la base de données.Enable or disable query optimization hotfixes at the database level.
  • Activer ou désactiver le cache d’identité au niveau de la base de donnéesEnable or disable the identity cache at the database level.
  • Activer ou désactiver un stub de plan compilé à stocker dans le cache lorsqu’un lot est compilé pour la première foisEnable or disable a compiled plan stub to be stored in cache when a batch is compiled for the first time.
  • Activer ou désactiver la collecte de statistiques d’exécution pour les modules T-SQL compilés en mode natif.Enable or disable collection of execution statistics for natively compiled T-SQL modules.
  • Activer ou désactiver les options par défaut « online » pour les instructions DDL qui prennent en charge la syntaxe ONLINE =.Enable or disable online by default options for DDL statements that support the ONLINE = syntax.
  • Activer ou désactiver les options par défaut « resumable » pour les instructions DDL qui prennent en charge la syntaxe RESUMABLE =.Enable or disable resumable by default options for DDL statements that support the RESUMABLE = syntax.
  • Activer ou désactiver la fonctionnalité de suppression automatique des tables temporaires globales.Enable or disable the auto-drop functionality of global temporary tables.
  • Activer ou désactiver les fonctionnalités de traitement de requêtes intelligent.Enable or disable Intelligent query processing features.
  • Activer ou désactiver l’infrastructure de profilage de requête léger.Enable or disable the lightweight query profiling infrastructure.
  • Activer ou désactiver le nouveau message d’erreur String or binary data would be truncated.Enable or disable the new String or binary data would be truncated error message.
  • Active ou désactive la collection du dernier plan d’exécution actuel dans sys.dm_exec_query_plan_stats.Enable or disable collection of last actual execution plan in sys.dm_exec_query_plan_stats.

Icône de lien Conventions de la syntaxe Transact-SQLlink icon Transact-SQL Syntax Conventions

SyntaxeSyntax

ALTER DATABASE SCOPED CONFIGURATION
{
     {  [ FOR SECONDARY] SET <set_options>}
}
| CLEAR PROCEDURE_CACHE  [plan_handle]
| SET < set_options >
[;]

< set_options > ::=
{
    MAXDOP = { <value> | PRIMARY}
    | LEGACY_CARDINALITY_ESTIMATION = { ON | OFF | PRIMARY}
    | PARAMETER_SNIFFING = { ON | OFF | PRIMARY}
    | QUERY_OPTIMIZER_HOTFIXES = { ON | OFF | PRIMARY}
    | IDENTITY_CACHE = { ON | OFF }
    | INTERLEAVED_EXECUTION_TVF = {  ON | OFF }
    | BATCH_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF  }
    | BATCH_MODE_ADAPTIVE_JOINS = { ON | OFF }
    | TSQL_SCALAR_UDF_INLINING = { ON | OFF }
    | ELEVATE_ONLINE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
    | ELEVATE_RESUMABLE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
    | OPTIMIZE_FOR_AD_HOC_WORKLOADS = { ON | OFF }
    | XTP_PROCEDURE_EXECUTION_STATISTICS = { ON | OFF }
    | XTP_QUERY_EXECUTION_STATISTICS = { ON | OFF }
    | ROW_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF }
    | BATCH_MODE_ON_ROWSTORE = { ON | OFF }
    | DEFERRED_COMPILATION_TV = { ON | OFF }
    | GLOBAL_TEMPORARY_TABLE_AUTODROP = { ON | OFF }
    | LIGHTWEIGHT_QUERY_PROFILING = { ON | OFF }
    | VERBOSE_TRUNCATION_WARNINGS = { ON | OFF }
    | LAST_QUERY_PLAN_STATS = { ON | OFF }
}

ArgumentsArguments

FOR SECONDARYFOR SECONDARY

Spécifie les paramètres des bases de données secondaires (toutes les bases de données secondaires doivent avoir des valeurs identiques).Specifies the settings for secondary databases (all secondary databases must have the identical values).

CLEAR PROCEDURE_CACHE [plan_handle]CLEAR PROCEDURE_CACHE [plan_handle]

Efface le cache (du plan) de procédure pour la base de données et peut être exécuté sur les bases de données primaires et secondaires.Clears the procedure (plan) cache for the database, and can be executed both on the primary and the secondaries.

Spécifiez un descripteur de plan de requête pour effacer un seul plan de requête du cache de plan.Specify a query plan handle to clear a single query plan from the plan cache.

Notes

La spécification d’un descripteur de plan de requête est disponible dans les bases de données SQL Azure et SQL Server 2019 ou ultérieures.Specifying a query plan handle is available in Azure SQL Database and SQL Server 2019 or higher.

MAXDOP = {<value> | PRIMARY } <value>MAXDOP = {<value> | PRIMARY } <value>

Spécifiez le paramètre MAXDOP par défaut qui doit être utilisé pour les instructions.Specifies the default MAXDOP setting that should be used for statements. 0 est la valeur par défaut, et indique que la configuration du serveur doit être utilisée.0 is the default value and indicates that the server configuration will be used instead. Le paramètre MAXDOP défini au niveau de la base de données remplace (sauf si sa valeur est 0) le paramètre max degree of parallelism défini au niveau du serveur par sp_configure.The MAXDOP at the database scope overrides (unless it is set to 0) the max degree of parallelism set at the server level by sp_configure. Les indicateurs de requête peuvent tout de même remplacer le paramètre MAXDOP défini au niveau de la base de données afin de configurer les requêtes qui nécessitent un paramétrage différent.Query hints can still override the DB scoped MAXDOP in order to tune specific queries that need different setting. Tous ces paramètres sont limités par le paramètre MAXDOP défini pour le groupe de charge de travail.All these settings are limited by the MAXDOP set for the Workload Group.

Vous pouvez utiliser l'option max degree of parallelism pour limiter le nombre de processeurs à utiliser lors de l'exécution des plans parallèles.You can use the max degree of parallelism option to limit the number of processors to use in parallel plan execution. SQL Server prend en compte les plans d’exécution parallèle pour les requêtes, les opérations DDL d’index, l’insertion parallèle, la modification de colonne en ligne, la collecte de statistiques parallèle et l’alimentation des curseurs statiques et de jeu de clés.SQL Server considers parallel execution plans for queries, index data definition language (DDL) operations, parallel insert, online alter column, parallel stats collection, and static and keyset-driven cursor population.

Pour définir cette option au niveau de l’instance, consultez Configurer l’option de configuration du serveur max degree of parallelism.To set this option at the instance level, see Configure the max degree of parallelism Server Configuration Option.

Conseil

Pour définir cette option au niveau de la requête, ajoutez l’indicateur de requête MAXDOP.To accomplish this at the query level, add the MAXDOP query hint.

PRIMARYPRIMARY

Peut uniquement être défini pour les bases de données secondaires lorsque la base de données est définie sur PRIMARY, et indique que la configuration est celle définie pour la base de données primaire.Can only be set for the secondaries, while the database in on the primary, and indicates that the configuration will be the one set for the primary. Si la configuration de la base de données primaire est modifiée, la valeur des bases de données secondaires est modifiée en conséquence, sans que vous ayez à la définir explicitement.If the configuration for the primary changes, the value on the secondaries will change accordingly without the need to set the secondaries value explicitly. PRIMARY est le paramètre par défaut des bases de données secondaires.PRIMARY is the default setting for the secondaries.

LEGACY_CARDINALITY_ESTIMATION = { ON | OFF | PRIMARY }LEGACY_CARDINALITY_ESTIMATION = { ON | OFF | PRIMARY }

Permet de définir le modèle d’estimation de la cardinalité de l’optimiseur de requête sur SQL Server 2012 ou antérieur selon le niveau de compatibilité de la base de données.Enables you to set the query optimizer cardinality estimation model to the SQL Server 2012 and earlier version independent of the compatibility level of the database. La valeur par défaut est OFF, ce qui définit le modèle d’estimation de la cardinalité de l’optimiseur de requête en fonction du niveau de compatibilité de la base de données.The default is OFF, which sets the query optimizer cardinality estimation model based on the compatibility level of the database. Définir LEGACY_CARDINALITY_ESTIMATION sur ON équivaut à activer indicateur de Trace 9481.Setting LEGACY_CARDINALITY_ESTIMATION to ON is equivalent to enabling Trace Flag 9481.

Conseil

Pour définir cette option au niveau de la requête, ajoutez l’indicateur de requête QUERYTRACEON.To accomplish this at the query level, add the QUERYTRACEON query hint. Avec SQL Server 2016 (13.x)SQL Server 2016 (13.x) SP1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requête USE HINT au lieu de l’indicateur de trace.Starting with SQL Server 2016 (13.x)SQL Server 2016 (13.x) SP1, to accomplish this at the query level, add the USE HINT query hint instead of using the trace flag.

PRIMARYPRIMARY

Cette valeur est valide uniquement pour les bases de données secondaires lorsque la base de données est définie sur PRIMARY, et indique que le paramètre du modèle d’estimation de la cardinalité de l’optimiseur de requête de toutes les bases de données secondaires est défini sur la valeur de la base de données primaire.This value is only valid on secondaries while the database in on the primary, and specifies that the query optimizer cardinality estimation model setting on all secondaries will be the value set for the primary. Si la configuration du modèle d’estimation de la cardinalité de l’optimiseur de requête qui est définie dans la base de données primaire est modifiée, la valeur des bases de données secondaires est modifiée en conséquence.If the configuration on the primary for the query optimizer cardinality estimation model changes, the value on the secondaries will change accordingly. PRIMARY est le paramètre par défaut des bases de données secondaires.PRIMARY is the default setting for the secondaries.

PARAMETER_SNIFFING = { ON | OFF | PRIMARY}PARAMETER_SNIFFING = { ON | OFF | PRIMARY}

Active ou désactive la détection de paramètres.Enables or disables parameter sniffing. La valeur par défaut est ON.The default is ON. La définition de PARAMETER_SNIFFING sur ON équivaut à activer l’indicateur de trace 4136.Setting PARAMETER_SNIFFING to OFF is equivalent to enabling Trace Flag 4136.

Conseil

Pour définir cette option au niveau de la requête, utilisez l’indicateur de requête OPTIMIZE FOR UNKNOWN.To accomplish this at the query level, see the OPTIMIZE FOR UNKNOWN query hint. Avec SQL Server 2016 (13.x)SQL Server 2016 (13.x) SP1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, vous pouvez également utiliser l’indicateur de requête USE HINT.Starting with SQL Server 2016 (13.x)SQL Server 2016 (13.x) SP1, to accomplish this at the query level, the USE HINT query hint is also available.

PRIMARYPRIMARY

Cette valeur est valide uniquement pour les bases de données secondaires lorsque la base de données est définie sur PRIMARY, et indique que, sur toutes les bases de données secondaires, ce paramètre est défini sur la valeur de la base de données primaire.This value is only valid on secondaries while the database in on the primary, and specifies that the value for this setting on all secondaries will be the value set for the primary. Si la configuration de la détection de paramètres est modifiée sur la base de données primaire, la valeur des bases de données secondaires est modifiée en conséquence, sans que vous ayez à la définir explicitement.If the configuration on the primary for using parameter sniffing changes, the value on the secondaries will change accordingly without the need to set the secondaries value explicitly. PRIMARY est le paramètre par défaut des bases de données secondaires.PRIMARY is the default setting for the secondaries.

QUERY_OPTIMIZER_HOTFIXES = { ON | OFF | PRIMARY }QUERY_OPTIMIZER_HOTFIXES = { ON | OFF | PRIMARY }

Active ou désactive les correctifs logiciels d’optimisation de requête, quel que soit le niveau de compatibilité de la base de données.Enables or disables query optimization hotfixes regardless of the compatibility level of the database. La valeur par défaut est OFF, laquelle désactive les correctifs logiciels d’optimisation des requêtes qui ont été publiés après l’arrivée du plus haut niveau de compatibilité d’une version donnée (post-RTM).The default is OFF, which disables query optimization hotfixes that were released after the highest available compatibility level was introduced for a specific version (post-RTM). L’utilisation de la valeur ON équivaut à activer l’indicateur de trace 4199.Setting this to ON is equivalent to enabling Trace Flag 4199.

Conseil

Pour définir cette option au niveau de la requête, ajoutez l’indicateur de requête QUERYTRACEON.To accomplish this at the query level, add the QUERYTRACEON query hint. Avec SQL Server 2016 (13.x)SQL Server 2016 (13.x) SP1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requête USE HINT au lieu de l’indicateur de trace.Starting with SQL Server 2016 (13.x)SQL Server 2016 (13.x) SP1, to accomplish this at the query level, add the USE HINT query hint instead of using the trace flag.

PRIMARYPRIMARY

Cette valeur est valide uniquement pour les bases de données secondaires lorsque la base de données est définie sur PRIMARY, et indique que, sur toutes les bases de données secondaires, ce paramètre est défini sur la valeur de la base de données primaire.This value is only valid on secondaries while the database in on the primary, and specifies that the value for this setting on all secondaries is the value set for the primary. Si la configuration de la base de données primaire est modifiée, la valeur des bases de données secondaires est modifiée en conséquence, sans que vous ayez à la définir explicitement.If the configuration for the primary changes, the value on the secondaries changes accordingly without the need to set the secondaries value explicitly. PRIMARY est le paramètre par défaut des bases de données secondaires.PRIMARY is the default setting for the secondaries.

IDENTITY_CACHE = { ON | OFF }IDENTITY_CACHE = { ON | OFF }

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2017 (14.x)SQL Server 2017 (14.x)) et Azure SQL DatabaseAzure SQL Database.Applies to: SQL ServerSQL Server (Starting with SQL Server 2017 (14.x)SQL Server 2017 (14.x)) and Azure SQL DatabaseAzure SQL Database

Active ou désactive le cache d’identité au niveau de la base de données.Enables or disables identity cache at the database level. La valeur par défaut est ON.The default is ON. La mise en cache d’identité est utilisée pour améliorer les performances INSERT sur les tables comprenant des colonnes d’identité.Identity caching is used to improve INSERT performance on tables with identity columns. Pour éviter les écarts dans les valeurs des colonnes d’identité si un serveur redémarre de façon inattendue ou bascule vers un serveur secondaire, désactivez l’option IDENTITY_CACHE.To avoid gaps in the values of an identity column in cases where the server restarts unexpectedly or fails over to a secondary server, disable the IDENTITY_CACHE option. Cette option est similaire à l’indicateur de trace 272 existant, sauf qu’elle peut être définie au niveau de la base de données et non uniquement au niveau du serveur.This option is similar to the existing Trace Flag 272, except that it can be set at the database level rather than only at the server level.

Notes

Cette option peut uniquement être définie sur la valeur PRIMARY.This option can only be set for the PRIMARY. Pour plus d’informations, consultez Colonnes d’identité.For more information, see identity columns.

INTERLEAVED_EXECUTION_TVF = { ON | OFF }INTERLEAVED_EXECUTION_TVF = { ON | OFF }

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2017 (14.x)SQL Server 2017 (14.x)) et Azure SQL DatabaseAzure SQL Database.Applies to: SQL ServerSQL Server (Starting with SQL Server 2017 (14.x)SQL Server 2017 (14.x)) and Azure SQL DatabaseAzure SQL Database

Vous permet d’activer ou de désactiver l’exécution entrelacée pour les fonctions table à instructions multiples dans l’étendue de la base de données ou de l’instruction tout en maintenant le niveau de compatibilité de base de données 140 et au-delà.Allows you to enable or disable Interleaved execution for multi-statement table valued functions at the database or statement scope while still maintaining database compatibility level 140 and higher. L’exécution entrelacée est une fonctionnalité qui fait partie du traitement de requêtes adaptatif dans Azure SQL DatabaseAzure SQL Database.Interleaved execution is a feature that is part of Adaptive query processing in Azure SQL DatabaseAzure SQL Database. Pour plus d’informations, consultez Traitement de requêtes intelligent.For more information, please refer to Intelligent query processing.

Notes

Pour le niveau de compatibilité de la base de données inférieur ou égal à 130, cette configuration étendue à la base de données n’a aucun effet.For database compatibility level 130 or lower, this database scoped configuration has no effect.

BATCH_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF}BATCH_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF}

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2017 (14.x)SQL Server 2017 (14.x)) et Azure SQL DatabaseAzure SQL Database.Applies to: SQL ServerSQL Server (Starting with SQL Server 2017 (14.x)SQL Server 2017 (14.x)) and Azure SQL DatabaseAzure SQL Database

Vous permet d’activer ou de désactiver la rétroaction d’allocation de mémoire en mode batch dans l’étendue de la base de données tout en maintenant le niveau de compatibilité de la base de données à au moins 140.Allows you to enable or disable batch mode memory grant feedback at the database scope while still maintaining database compatibility level 140 and higher. La rétroaction d’allocation de mémoire en mode batch est une fonctionnalité qui fait partie du traitement de requêtes intelligent introduit dans SQL Server 2017 (14.x)SQL Server 2017 (14.x).Batch mode memory grant feedback a feature that is part of Intelligent query processing introduced in SQL Server 2017 (14.x)SQL Server 2017 (14.x).

Notes

Pour le niveau de compatibilité de la base de données inférieur ou égal à 130, cette configuration étendue à la base de données n’a aucun effet.For database compatibility level 130 or lower, this database scoped configuration has no effect.

BATCH_MODE_ADAPTIVE_JOINS = { ON | OFF}BATCH_MODE_ADAPTIVE_JOINS = { ON | OFF}

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2017 (14.x)SQL Server 2017 (14.x)) et Azure SQL DatabaseAzure SQL Database.Applies to: SQL ServerSQL Server (Starting with SQL Server 2017 (14.x)SQL Server 2017 (14.x)) and Azure SQL DatabaseAzure SQL Database

Vous permet d’activer ou de désactiver les jointures adaptatives en mode batch dans l’étendue de la base de données tout en maintenant le niveau de compatibilité de la base de données à au moins 140.Allows you to enable or disable batch mode adaptive joins at the database scope while still maintaining database compatibility level 140 and higher. Les jointures adaptatives en mode batch sont une fonctionnalité qui fait partie du traitement de requêtes intelligent introduit dans SQL Server 2017 (14.x)SQL Server 2017 (14.x).Batch mode adaptive joins is a feature that is part of Intelligent query processing introduced in SQL Server 2017 (14.x)SQL Server 2017 (14.x).

Notes

Pour le niveau de compatibilité de la base de données inférieur ou égal à 130, cette configuration étendue à la base de données n’a aucun effet.For database compatibility level 130 or lower, this database scoped configuration has no effect.

TSQL_SCALAR_UDF_INLINING = { ON | OFF }TSQL_SCALAR_UDF_INLINING = { ON | OFF }

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2019 - PreviewSQL Server 2019 preview) et Azure SQL DatabaseAzure SQL Database (fonctionnalité en préversion publique)Applies to: SQL ServerSQL Server (Starting with SQL Server 2019 - PreviewSQL Server 2019 preview) and Azure SQL DatabaseAzure SQL Database (feature is in public preview)

Vous permet d’activer ou de désactiver l’incorporation (inlining) des fonctions UDF scalaires T-SQL dans l’étendue de la base de données tout en maintenant le niveau de compatibilité de la base de données à au moins 150.Allows you to enable or disable T-SQL Scalar UDF inlining at the database scope while still maintaining database compatibility level 150 and higher. L’incorporation (inlining) des fonctions UDF scalaires T-SQL fait partie de la famille des fonctionnalités de traitement de requêtes intelligent.T-SQL Scalar UDF inlining is part of the Intelligent query processing feature family.

Notes

Pour le niveau de compatibilité de la base de données inférieur ou égal à 140, cette configuration étendue à la base de données n’a aucun effet.For database compatibility level 140 or lower, this database scoped configuration has no effect.

ELEVATE_ONLINE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }ELEVATE_ONLINE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }

S’applique à : Azure SQL DatabaseAzure SQL Database (fonctionnalité en préversion publique)Applies to: Azure SQL DatabaseAzure SQL Database (feature is in public preview)

Permet de sélectionner les options destinées à forcer le moteur à élever automatiquement les opérations prises en charge pour une exécution en ligne.Allows you to select options to cause the engine to automatically elevate supported operations to online. La valeur par défaut est OFF, ce qui signifie que les opérations ne sont pas élevées pour une exécution en ligne, sauf si cela est spécifié dans l’instruction.The default is OFF, which means operations will not be elevated to online unless specified in the statement. sys.database_scoped_configurations reflète la valeur actuelle de ELEVATE_ONLINE.sys.database_scoped_configurations reflects the current value of ELEVATE_ONLINE. Ces options s’appliquent uniquement aux opérations prises en charge pour une exécution en ligne.These options will only apply to operations that are supported for online.

FAIL_UNSUPPORTEDFAIL_UNSUPPORTED

Cette valeur élève toutes les opérations DDL prises en charge pour une exécution en ligne (option ONLINE).This value elevates all supported DDL operations to ONLINE. Les opérations qui ne prennent pas en charge l’exécution en ligne échouent et génèrent un avertissement.Operations that do not support online execution will fail and throw a warning.

WHEN_SUPPORTEDWHEN_SUPPORTED

Cette valeur élève les opérations qui prennent en charge l’option ONLINE.This value elevates operations that support ONLINE. Les opérations qui ne prennent pas en charge une exécution en ligne sont exécutées en mode hors connexion.Operations that do not support online will be run offline.

Notes

Vous pouvez remplacer le paramètre par défaut en envoyant une instruction avec l’option ONLINE spécifiée.You can override the default setting by submitting a statement with the ONLINE option specified.

ELEVATE_RESUMABLE= { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }ELEVATE_RESUMABLE= { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2019 - PreviewSQL Server 2019 preview) et Azure SQL DatabaseAzure SQL Database (fonctionnalité en préversion publique)Applies to: SQL ServerSQL Server (Starting with SQL Server 2019 - PreviewSQL Server 2019 preview) and Azure SQL DatabaseAzure SQL Database (feature is in public preview)

Permet de sélectionner des options pour forcer le moteur à élever automatiquement les opérations prises en charge pour une exécution pouvant être reprise.Allows you to select options to cause the engine to automatically elevate supported operations to resumable. La valeur par défaut est OFF, ce qui signifie que les opérations ne sont pas élevées pour une exécution pouvant être reprise, sauf si cela est spécifié dans l’instruction.The default is OFF, which means operations are not be elevated to resumable unless specified in the statement. sys.database_scoped_configurations reflète la valeur actuelle de ELEVATE_RESUMABLE.sys.database_scoped_configurations reflects the current value of ELEVATE_RESUMABLE. Ces options s’appliquent uniquement aux opérations prises en charge pour une exécution pouvant être reprise.These options only apply to operations that are supported for resumable.

FAIL_UNSUPPORTEDFAIL_UNSUPPORTED

Cette valeur élève toutes les opérations DDL prises en charge pour une exécution pouvant être reprise (option RESUMABLE).This value elevates all supported DDL operations to RESUMABLE. Les opérations qui ne prennent pas en charge l’exécution pouvant être reprise échouent et génèrent un avertissement.Operations that do not support resumable execution fail and throw a warning.

WHEN_SUPPORTEDWHEN_SUPPORTED

Cette valeur élève les opérations qui prennent en charge l’option RESUMABLE.This value elevates operations that support RESUMABLE. Les opérations qui ne prennent pas en charge l’exécution pouvant être reprise sont exécutées en tant que telles.Operations that do not support resumable are run non-resumably.

Notes

Vous pouvez remplacer le paramètre par défaut en envoyant une instruction avec l’option RESUMABLE spécifiée.You can override the default setting by submitting a statement with the RESUMABLE option specified.

OPTIMIZE_FOR_AD_HOC_WORKLOADS = { ON | OFF }OPTIMIZE_FOR_AD_HOC_WORKLOADS = { ON | OFF }

S’applique à : Azure SQL DatabaseAzure SQL DatabaseApplies to: Azure SQL DatabaseAzure SQL Database

Active ou désactive un stub de plan compilé à stocker dans le cache lorsqu’un lot est compilé pour la première fois.Enables or disables a compiled plan stub to be stored in cache when a batch is compiled for the first time. La valeur par défaut est OFF.The default is OFF. Une fois que la configuration étendue à la base de données OPTIMIZE_FOR_AD_HOC_WORKLOADS est activée pour une base de données, un stub de plan compilé est stocké dans le cache lorsqu’un lot est compilé pour la première fois.Once the database scoped configuration OPTIMIZE_FOR_AD_HOC_WORKLOADS is enabled for a database, a compiled plan stub will be stored in cache when a batch is compiled for the first time. Les stubs de plan ont un encombrement mémoire moins important que celui des plans compilés complets.Plan stubs have a smaller memory footprint compared to the size of the full compiled plan. Si un lot est compilé ou réexécuté, le stub de plan compilé est supprimé et remplacé par un plan compilé complet.If a batch is compiled or executed again, the compiled plan stub will be removed and replaced with a full compiled plan.

XTP_PROCEDURE_EXECUTION_STATISTICS = { ON | OFF }XTP_PROCEDURE_EXECUTION_STATISTICS = { ON | OFF }

S’applique à : Azure SQL DatabaseAzure SQL DatabaseApplies to: Azure SQL DatabaseAzure SQL Database

Active ou désactive la collecte de statistiques d’exécution au niveau du module pour les modules T-SQL compilés en mode natif dans la base de données actuelle.Enables or disables collection of execution statistics at the module-level for natively compiled T-SQL modules in the current database. La valeur par défaut est OFF.The default is OFF. Les statistiques d’exécution sont disponibles dans sys.dm_exec_procedure_stats.The execution statistics are reflected in sys.dm_exec_procedure_stats.

Les statistiques d’exécution au niveau du module pour les modules T-SQL compilés en mode natif sont collectées si cette option est activée (ON) ou si la collecte des statistiques est activée avec sp_xtp_control_proc_exec_stats.Module-level execution statistics for natively compiled T-SQL modules are collected if either this option is ON, or if statistics collection is enabled through sp_xtp_control_proc_exec_stats.

XTP_QUERY_EXECUTION_STATISTICS = { ON | OFF }XTP_QUERY_EXECUTION_STATISTICS = { ON | OFF }

S’applique à : Azure SQL DatabaseAzure SQL DatabaseApplies to: Azure SQL DatabaseAzure SQL Database

Active ou désactive la collecte de statistiques d’exécution au niveau de l’instruction pour les modules T-SQL compilés en mode natif dans la base de données actuelle.Enables or disables collection of execution statistics at the statement-level for natively compiled T-SQL modules in the current database. La valeur par défaut est OFF.The default is OFF. Les statistiques d’exécution sont disponibles dans sys.dm_exec_query_stats et dans le magasin des requêtes.The execution statistics are reflected in sys.dm_exec_query_stats and in Query Store.

Les statistiques d’exécution au niveau de l’instruction pour les modules T-SQL compilés en mode natif sont collectées si cette option est activée (ON) ou si la collecte des statistiques est activée avec sp_xtp_control_query_exec_stats.Statement-level execution statistics for natively compiled T-SQL modules are collected if either this option is ON, or if statistics collection is enabled through sp_xtp_control_query_exec_stats.

Pour plus d’informations sur la supervision des performances des modules Transact-SQLTransact-SQL compilés en mode natif, consultez Surveillance des performances des procédures stockées compilées en mode natif.For more information about performance monitoring of natively compiled Transact-SQLTransact-SQL modules see Monitoring Performance of Natively Compiled Stored Procedures.

ROW_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF}ROW_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF}

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2019 - PreviewSQL Server 2019 preview) et Azure SQL DatabaseAzure SQL Database (fonctionnalité en préversion publique)Applies to: SQL ServerSQL Server (Starting with SQL Server 2019 - PreviewSQL Server 2019 preview) and Azure SQL DatabaseAzure SQL Database (feature is in public preview)

Vous permet d’activer ou de désactiver la rétroaction d’allocation de mémoire en mode ligne dans l’étendue de la base de données tout en maintenant le niveau de compatibilité de la base de données à au moins 150.Allows you to enable or disable row mode memory grant feedback at the database scope while still maintaining database compatibility level 150 and higher. La rétroaction d’allocation de mémoire en mode ligne est une fonctionnalité qui fait partie du traitement de requêtes intelligent introduit dans SQL Server 2017 (14.x)SQL Server 2017 (14.x) (le mode ligne est pris en charge dans SQL Server 2019 - PreviewSQL Server 2019 preview et Azure SQL DatabaseAzure SQL Database).Row mode memory grant feedback a feature that is part of Intelligent query processing introduced in SQL Server 2017 (14.x)SQL Server 2017 (14.x) (row mode is supported in SQL Server 2019 - PreviewSQL Server 2019 preview and Azure SQL DatabaseAzure SQL Database).

Notes

Pour le niveau de compatibilité de la base de données inférieur ou égal à 140, cette configuration étendue à la base de données n’a aucun effet.For database compatibility level 140 or lower, this database scoped configuration has no effect.

BATCH_MODE_ON_ROWSTORE = { ON | OFF}BATCH_MODE_ON_ROWSTORE = { ON | OFF}

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2019 - PreviewSQL Server 2019 preview) et Azure SQL DatabaseAzure SQL Database (fonctionnalité en préversion publique)Applies to: SQL ServerSQL Server (Starting with SQL Server 2019 - PreviewSQL Server 2019 preview) and Azure SQL DatabaseAzure SQL Database (feature is in public preview)

Vous permet d’activer ou de désactiver le mode batch sur rowstore dans l’étendue de la base de données tout en maintenant le niveau de compatibilité de la base de données à au moins 150.Allows you to enable or disable batch mode on rowstore at the database scope while still maintaining database compatibility level 150 and higher. Le mode batch sur rowstore est une fonctionnalité qui fait partie de la famille de fonctionnalités de traitement de requêtes intelligent.Batch mode on rowstore is a feature that is part of Intelligent query processing feature family.

Notes

Pour le niveau de compatibilité de la base de données inférieur ou égal à 140, cette configuration étendue à la base de données n’a aucun effet.For database compatibility level 140 or lower, this database scoped configuration has no effect.

DEFERRED_COMPILATION_TV = { ON | OFF}DEFERRED_COMPILATION_TV = { ON | OFF}

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2019 - PreviewSQL Server 2019 preview) et Azure SQL DatabaseAzure SQL Database (fonctionnalité en préversion publique)Applies to: SQL ServerSQL Server (Starting with SQL Server 2019 - PreviewSQL Server 2019 preview) and Azure SQL DatabaseAzure SQL Database (feature is in public preview)

Vous permet d’activer ou de désactiver la compilation différée de variables de table dans l’étendue de la base de données tout en maintenant le niveau de compatibilité de la base de données à au moins 150.Allows you to enable or disable table variable deferred compilation at the database scope while still maintaining database compatibility level 150 and higher. La compilation différée de variables de table est une fonctionnalité qui fait partie de la famille de fonctionnalités de traitement de requêtes intelligent.Table variable deferred compilation is a feature that is part of Intelligent query processing feature family.

Notes

Pour le niveau de compatibilité de la base de données inférieur ou égal à 140, cette configuration étendue à la base de données n’a aucun effet.For database compatibility level 140 or lower, this database scoped configuration has no effect.

GLOBAL_TEMPORARY_TABLE_AUTODROP = { ON | OFF }GLOBAL_TEMPORARY_TABLE_AUTODROP = { ON | OFF }

S’applique à : Azure SQL DatabaseAzure SQL Database (fonctionnalité en préversion publique)Applies to: Azure SQL DatabaseAzure SQL Database (feature is in public preview)

Permet de définir la fonctionnalité de suppression automatique pour les tables temporaires globales.Allows setting the auto drop functionality for global temporary tables. La valeur par défaut est ON, ce qui signifie que les tables temporaires globales sont automatiquement supprimées lorsqu’elles ne sont pas utilisées dans une session.The default is ON, which means that the global temporary tables are automatically dropped when not in use by any session. Lorsqu’elles sont définies sur OFF, les tables temporaires globales doivent être supprimées explicitement à l’aide d’une instruction DROP TABLE ou sont automatiquement supprimées au redémarrage du serveur.When set to OFF, global temporary tables need to be explicitly dropped using a DROP TABLE statement or will be automatically dropped on server restart.

  • Avec les bases de données uniques/pools élastiques Azure SQL DatabaseAzure SQL Database, cette option peut être définie dans les bases de données utilisateur individuelles du serveur SQL Database.With Azure SQL DatabaseAzure SQL Database single databases and elastic pools, this option can be set in the individual user databases of the SQL Database server.
  • Dans l’instance managée SQL ServerSQL Server et Azure SQL DatabaseAzure SQL Database, cette option est définie dans TempDB, et le paramètre des bases de données utilisateur individuelles n’a aucun effet.In SQL ServerSQL Server and Azure SQL DatabaseAzure SQL Database managed instance, this option is set in TempDB and the setting of the individual user databases has no effect.

LIGHTWEIGHT_QUERY_PROFILING = { ON | OFF}LIGHTWEIGHT_QUERY_PROFILING = { ON | OFF}

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2019 - PreviewSQL Server 2019 preview) et Azure SQL DatabaseAzure SQL Database.Applies to: SQL ServerSQL Server (Starting with SQL Server 2019 - PreviewSQL Server 2019 preview) and Azure SQL DatabaseAzure SQL Database

Vous permet d’activer ou de désactiver l’infrastructure de profilage de requête léger.Allows you to enable or disable the lightweight query profiling infrastructure. L’infrastructure de profilage de requête léger (LWP) fournit les données de performances de requête plus efficacement que les mécanismes de profilage standard et est activée par défaut.The lightweight query profiling infrastructure (LWP) provides query performance data more efficiently than standard profiling mechanisms and is enabled by default.

VERBOSE_TRUNCATION_WARNINGS = { ON | OFF}VERBOSE_TRUNCATION_WARNINGS = { ON | OFF}

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2019 - PreviewSQL Server 2019 preview) et Azure SQL DatabaseAzure SQL Database.Applies to: SQL ServerSQL Server (Starting with SQL Server 2019 - PreviewSQL Server 2019 preview) and Azure SQL DatabaseAzure SQL Database

Vous permet d’activer ou de désactiver le nouveau message d’erreur String or binary data would be truncated.Allows you to enable or disable the new String or binary data would be truncated error message. SQL Server 2019 - PreviewSQL Server 2019 preview introduit un nouveau message d’erreur (2628), plus spécifique, dans ce scénario :introduces a new, more specific error message (2628) for this scenario:

String or binary data would be truncated in table '%.*ls', column '%.*ls'. Truncated value: '%.*ls'.

Quand sa valeur est définie sur ON pour un niveau de compatibilité de la base de données en dessous de 150, les erreurs de troncation déclenchent le nouveau message d’erreur 2628 pour fournir plus de contexte et simplifier le dépannage.When set to ON under database compatibility level 150, truncation errors raise the new error message 2628 to provide more context and simplify the troubleshooting process.

Quand sa valeur est définie sur OFF pour un niveau de compatibilité de la base de données en dessous de 150, les erreurs de troncation déclenchent l’ancien message d’erreur 8152.When set to OFF under database compatibility level 150, truncation errors raise the previous error message 8152.

Pour un niveau de compatibilité de la base de données égal ou inférieur à 140, le message d’erreur 2628 reste un message d’erreur d’activation qui nécessite l’activation de l’indicateur de trace 460 ; cette configuration au niveau de la de base de données n’a alors aucun effet.For database compatibility level 140 or lower, error message 2628 remains an opt-in error message that requires trace flag 460 to be enabled, and this database scoped configuration has no effect.

LAST_QUERY_PLAN_STATS = { ON | OFF}LAST_QUERY_PLAN_STATS = { ON | OFF}

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2019 - PreviewSQL Server 2019 preview) (fonctionnalité en préversion publique)Applies to: SQL ServerSQL Server (Starting with SQL Server 2019 - PreviewSQL Server 2019 preview) (feature is in public preview)

Permet d’activer ou désactiver la collection des statistiques du dernier plan de requête (équivalent à un plan d’exécution réel) dans sys.dm_exec_query_plan_stats.Allows you to enable or disable colection of the last query plan statistics (equivalent to an actual execution plan) in sys.dm_exec_query_plan_stats.

AutorisationsPermissions

Nécessite ALTER ANY DATABASE SCOPE CONFIGURATION sur la base de données.Requires ALTER ANY DATABASE SCOPE CONFIGURATION on the database. Cette autorisation peut être accordée par un utilisateur disposant de l’autorisation CONTROL pour une base de données.This permission can be granted by a user with CONTROL permission on a database.

Remarques d'ordre généralGeneral Remarks

Même si vous pouvez configurer des bases de données secondaires avec des paramètres différents de ceux de la base de données primaire, toutes les bases de données secondaires doivent utiliser la même configuration.While you can configure secondary databases to have different scoped configuration settings from their primary, all secondary databases use the same configuration. Vous ne pouvez pas configurer des paramètres différents pour chaque base de données secondaire.Different settings cannot be configured for individual secondaries.

L’exécution de cette instruction efface le contenu du cache de procédures de la base de données actuelle, ce qui signifie que toutes les requêtes doivent être recompilées.Executing this statement clears the procedure cache in the current database, which means that all queries have to recompile.

Pour les requêtes de noms en trois parties, les paramètres de connexion de la base de données actuelle sont honorés (autres que ceux des modules SQL tels que les procédures, les fonctions et les déclencheurs, qui sont compilés dans le contexte de base de données actuel). Les options de la base de données dans laquelle ils résident sont donc utilisées.For 3-part name queries, the settings for the current database connection for the query are honored, other than for SQL modules (such as procedures, functions, and triggers) that are compiled in the current database context and therefore uses the options of the database in which they reside.

L’événement ALTER_DATABASE_SCOPED_CONFIGURATION est ajouté en tant qu’événement DDL qui peut être utilisé pour déclencher un déclencheur DDL, et il s’agit d’un enfant du groupe de déclencheurs ALTER_DATABASE_EVENTS.The ALTER_DATABASE_SCOPED_CONFIGURATION event is added as a DDL event that can be used to fire a DDL trigger, and is a child of the ALTER_DATABASE_EVENTS trigger group.

Les paramètres de configuration étendus de la base de données seront reportés avec la base de données, ce qui signifie que lorsqu’une base de données est restaurée ou attachée, les paramètres de configuration existants demeurent.Database scoped configuration settings will be carried over with the database, which means that when a given database is restored or attached, the existing configuration settings remain.

Limitations et restrictionsLimitations and Restrictions

MAXDOPMAXDOP

Les paramètres granulaires peuvent remplacer les paramètres globaux, et le gouverneur de ressources peut limiter tous les autres paramètres MAXDOP.The granular settings can override the global ones and that resource governor can cap all other MAXDOP settings. La logique du paramètre MAXDOP est la suivante :The logic for MAXDOP setting is the following:

  • L’indicateur de requête remplace sp_configure et la configuration étendue à la base de données.Query hint overrides both the sp_configure and the database scoped configuration. Si le groupe de ressources MAXDOP est défini pour le groupe de charge de travail :If the resource group MAXDOP is set for the workload group:

    • Si l’indicateur de requête est défini sur zéro (0), il est remplacé par le paramètre Resource Governor.If the query hint is set to zero (0), it is overridden by the resource governor setting.

    • Si l’indicateur de requête n’est pas défini sur zéro (0), il est limité par le paramètre Resource Governor.If the query hint is not zero (0), it is capped by the resource governor setting.

  • La configuration étendue à la base de données (à moins d’être définie sur 0) remplace le paramètre sp_configure, sauf s’il existe un indicateur de requête et qu’il est limité par le paramètre Resource Governor.The database scoped configuration (unless it's zero) overrides the sp_configure setting unless there is a query hint and is capped by the resource governor setting.

  • Le paramètre sp_configure est remplacé par le paramètre Resource Governor.The sp_configure setting is overridden by the resource governor setting.

QUERY_OPTIMIZER_HOTFIXESQUERY_OPTIMIZER_HOTFIXES

Quand l’indicateur QUERYTRACEON est utilisé pour activer l’optimiseur de requête par défaut de SQL Server 7.0 à SQL Server 2012 (11.x)SQL Server 2012 (11.x) ou les correctifs logiciels de l’optimiseur de requête, une condition OR lie l’indicateur de requête et le paramètre configuration étendue à la base de données, ce qui signifie que si l’un d’eux est activé, les configurations étendues à la base de données s’appliquent.When QUERYTRACEON hint is used to enable the default query optimizer of SQL Server 7.0 through SQL Server 2012 (11.x)SQL Server 2012 (11.x) versions or query optimizer hotfixes, it would be an OR condition between the query hint and the database scoped configuration setting, meaning if either is enabled, the database scoped configurations apply.

Reprise d’activité géographiqueGeo DR

Les bases de données secondaires accessibles en lecture (par exemple, les groupes de disponibilité AlwaysOn et les bases de données géorépliquées Azure SQL DatabaseAzure SQL Database) utilisent la valeur de la base de données secondaire en vérifiant l’état de la base de données.Readable secondary databases (Always On Availability Groups and Azure SQL DatabaseAzure SQL Database geo-replicated databases), use the secondary value by checking the state of the database. Même si la recompilation ne se produit pas lors du basculement et même si, techniquement, la nouvelle base de données primaire comprend des requêtes qui utilisent les paramètres des bases de données secondaires, l’idée est que le paramètre entre les bases de données primaires et secondaires varient uniquement lorsque la charge de travail est différente, et donc, que les requêtes mises en cache utilisent les paramètres optimaux, tandis que les nouvelles requêtes choisissent les nouveaux paramètres qui leur conviennent.Even though recompile does not occur on failover and technically the new primary has queries that are using the secondary settings, the idea is that the setting between primary and secondary only vary when the workload is different and therefore the cached queries are using the optimal settings, whereas new queries pick the new settings that are appropriate for them.

DacFxDacFx

ALTER DATABASE SCOPED CONFIGURATION étant une nouvelle fonctionnalité dans Azure SQL DatabaseAzure SQL Database et SQL ServerSQL Server (à compter de SQL Server 2016 (13.x)SQL Server 2016 (13.x)) qui affecte le schéma de base de données, les exportations du schéma (avec ou sans données) ne peuvent pas être importées dans une version antérieure de SQL ServerSQL Server, telle que SQL Server 2012 (11.x)SQL Server 2012 (11.x) ou SQL Server 2014 (12.x)SQL Server 2014 (12.x).Since ALTER DATABASE SCOPED CONFIGURATION is a new feature in Azure SQL DatabaseAzure SQL Database and SQL ServerSQL Server (starting with SQL Server 2016 (13.x)SQL Server 2016 (13.x)) that affects the database schema, exports of the schema (with or without data) are not able to be imported into an older version of SQL ServerSQL Server, such as SQL Server 2012 (11.x)SQL Server 2012 (11.x) or SQL Server 2014 (12.x)SQL Server 2014 (12.x). Par exemple, une exportation vers un DACPAC ou un BACPAC à partir d’une base de données SQL DatabaseSQL Database ou SQL Server 2016 (13.x)SQL Server 2016 (13.x) ayant utilisé cette nouvelle fonctionnalité ne peut pas être importée dans un serveur de niveau inférieur.For example, an export to a DACPAC or a BACPAC from an SQL DatabaseSQL Database or SQL Server 2016 (13.x)SQL Server 2016 (13.x) database that used this new feature would not be able to be imported into a down-level server.

ELEVATE_ONLINEELEVATE_ONLINE

Cette option s’applique uniquement aux instructions DDL qui prennent en charge la syntaxe WITH (ONLINE = <syntax>).This option only applies to DDL statements that support the WITH (ONLINE = <syntax>). Les index XML ne sont pas affectés.XML indexes are not affected.

ELEVATE_RESUMABLEELEVATE_RESUMABLE

Cette option s’applique uniquement aux instructions DDL qui prennent en charge la syntaxe WITH (RESUMABLE = <syntax>).This option only applies to DDL statements that support the WITH (RESUMABLE = <syntax>). Les index XML ne sont pas affectés.XML indexes are not affected.

MétadonnéesMetadata

La vue système sys.database_scoped_configurations (Transact-SQL) fournit des informations sur les configurations étendues à une base de données.The sys.database_scoped_configurations (Transact-SQL) system view provides information about scoped configurations within a database. Les options de configuration définies au niveau de la base de données s’affichent dans sys.database_scoped_configurations parce qu’elles remplacent les paramètres par défaut définis au niveau du serveur.Database-scoped configuration options only show up in sys.database_scoped_configurations as they are overrides to server-wide default settings. La vue système sys.configurations (Transact-SQL) affiche uniquement les paramètres définis au niveau du serveur.The sys.configurations (Transact-SQL) system view only shows server-wide settings.

ExemplesExamples

Ces exemples illustrent l’utilisation de ALTER DATABASE SCOPED CONFIGURATION.These examples demonstrate the use of ALTER DATABASE SCOPED CONFIGURATION

A.A. Accorder une autorisationGrant Permission

Cet exemple accorde à l’utilisateur Joe l’autorisation nécessaire pour exécuter ALTER DATABASE SCOPED CONFIGURATION.This example grant permission required to execute ALTER DATABASE SCOPED CONFIGURATION to user Joe.

GRANT ALTER ANY DATABASE SCOPED CONFIGURATION to [Joe] ;

B.B. Définir MAXDOPSet MAXDOP

Cet exemple définit MAXDOP = 1 pour une base de données primaire et MAXDOP = 4 pour la base de données secondaire dans un scénario de géoréplication.This example sets MAXDOP = 1 for a primary database and MAXDOP = 4 for a secondary database in a geo-replication scenario.

ALTER DATABASE SCOPED CONFIGURATION SET MAXDOP = 1 ;
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET MAXDOP = 4 ;

Cet exemple définit MAXDOP de sorte que sa valeur soit la même pour la base de données primaire et pour la base de données secondaire dans un scénario de géoréplication.This example sets MAXDOP for a secondary database to be the same as it is set for its primary database in a geo-replication scenario.

ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET MAXDOP = PRIMARY ;

C.C. Définir LEGACY_CARDINALITY_ESTIMATIONSet LEGACY_CARDINALITY_ESTIMATION

Cet exemple définit LEGACY_CARDINALITY_ESTIMATION sur ON pour une base de données secondaire dans un scénario de géoréplication.This example sets LEGACY_CARDINALITY_ESTIMATION to ON for a secondary database in a geo-replication scenario.

ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET LEGACY_CARDINALITY_ESTIMATION = ON ;

Cet exemple définit LEGACY_CARDINALITY_ESTIMATION de la même manière pour la base de données primaire et pour une base de données secondaire dans un scénario de géoréplication.This example sets LEGACY_CARDINALITY_ESTIMATION for a secondary database as it is for its primary database in a geo-replication scenario.

ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET LEGACY_CARDINALITY_ESTIMATION = PRIMARY ;

D.D. Définir PARAMETER_SNIFFINGSet PARAMETER_SNIFFING

Cet exemple définit PARAMETER_SNIFFING sur OFF pour une base de données primaire dans un scénario de géoréplication.This example sets PARAMETER_SNIFFING to OFF for a primary database in a geo-replication scenario.

ALTER DATABASE SCOPED CONFIGURATION SET PARAMETER_SNIFFING = OFF ;

Cet exemple définit PARAMETER_SNIFFING sur OFF pour une base de données secondaire dans un scénario de géoréplication.This example sets PARAMETER_SNIFFING to OFF for a secondary database in a geo-replication scenario.

ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET PARAMETER_SNIFFING = OFF ;

Cet exemple définit PARAMETER_SNIFFING de la même manière pour la base de données primaire et pour une base de données secondaire dans un scénario de géoréplication.This example sets PARAMETER_SNIFFING for secondary database as it is on primary database in a geo-replication scenario.

ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET PARAMETER_SNIFFING = PRIMARY ;

E.E. Définir QUERY_OPTIMIZER_HOTFIXESSet QUERY_OPTIMIZER_HOTFIXES

Cet exemple définit QUERY_OPTIMIZER_HOTFIXES sur ON pour la base de données primaire dans un scénario de géoréplication.Set QUERY_OPTIMIZER_HOTFIXES to ON for a primary database in a geo-replication scenario.

ALTER DATABASE SCOPED CONFIGURATION SET QUERY_OPTIMIZER_HOTFIXES = ON ;

F.F. Effacer le contenu du cache de procéduresClear Procedure Cache

Cet exemple efface le contenu du cache de procédures (possible uniquement pour la base de données primaire).This example clears the procedure cache (possible only for a primary database).

ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE;

G.G. Définir IDENTITY_CACHESet IDENTITY_CACHE

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2017 (14.x)SQL Server 2017 (14.x)) et Azure SQL DatabaseAzure SQL Database (fonctionnalité en préversion publique)Applies to: SQL ServerSQL Server (Starting with SQL Server 2017 (14.x)SQL Server 2017 (14.x)) and Azure SQL DatabaseAzure SQL Database (feature is in public preview)

Cet exemple désactive le cache d’identité.This example disables the identity cache.

ALTER DATABASE SCOPED CONFIGURATION SET IDENTITY_CACHE = OFF ;

H.H. Définir OPTIMIZE_FOR_AD_HOC_WORKLOADSSet OPTIMIZE_FOR_AD_HOC_WORKLOADS

S’applique à : Azure SQL DatabaseAzure SQL DatabaseApplies to: Azure SQL DatabaseAzure SQL Database

Cet exemple permet à un stub de plan compilé d’être stocké dans le cache lorsqu’un lot est compilé pour la première fois.This example enables a compiled plan stub to be stored in cache when a batch is compiled for the first time.

ALTER DATABASE SCOPED CONFIGURATION SET OPTIMIZE_FOR_AD_HOC_WORKLOADS = ON;

I.I. Définir ELEVATE_ONLINESet ELEVATE_ONLINE

S’applique à : Azure SQL DatabaseAzure SQL Database (fonctionnalité en préversion publique)Applies to: Azure SQL DatabaseAzure SQL Database (feature is in public preview)

Cet exemple définit ELEVATE_ONLINE sur FAIL_UNSUPPORTED.This example sets ELEVATE_ONLINE to FAIL_UNSUPPORTED.

ALTER DATABASE SCOPED CONFIGURATION SET ELEVATE_ONLINE = FAIL_UNSUPPORTED ;

J.J. Définir ELEVATE_RESUMABLESet ELEVATE_RESUMABLE

S’applique à : Azure SQL DatabaseAzure SQL Database et SQL Server 2019 - PreviewSQL Server 2019 preview (fonctionnalité en préversion publique)Applies to: Azure SQL DatabaseAzure SQL Database and SQL Server 2019 - PreviewSQL Server 2019 preview (feature is in public preview)

Cet exemple affecte la valeur WHEN_SUPPORTED à ELEVEATE_RESUMABLE.This example sets ELEVATE_RESUMABLE to WHEN_SUPPORTED.

ALTER DATABASE SCOPED CONFIGURATION SET ELEVATE_RESUMABLE = WHEN_SUPPORTED ;

K.K. Effacer un plan de requête du cache du planClear a query plan from the plan cache

S’applique à : SQL ServerSQL Server (à compter de SQL Server 2017 (14.x)SQL Server 2017 (14.x)) et Azure SQL DatabaseAzure SQL Database.Applies to: SQL ServerSQL Server (Starting with SQL Server 2017 (14.x)SQL Server 2017 (14.x)) and Azure SQL DatabaseAzure SQL Database

Cet exemple efface un plan spécifique à du cache de procédureThis example clears a specific plan from the procedure cache

ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE 0x06000500F443610F003B7CD12C02000001000000000000000000000000000000000000000000000000000000;

Ressources supplémentairesAdditional Resources

Ressources MAXDOPMAXDOP Resources

Ressources LEGACY_CARDINALITY_ESTIMATIONLEGACY_CARDINALITY_ESTIMATION Resources

Ressources PARAMETER_SNIFFINGPARAMETER_SNIFFING Resources

Ressources QUERY_OPTIMIZER_HOTFIXESQUERY_OPTIMIZER_HOTFIXES Resources

Ressources ELEVATE_ONLINEELEVATE_ONLINE Resources

Instructions pour les opérations d’index en ligneGuidelines for Online Index Operations

Ressources ELEVATE_RESUMABLEELEVATE_RESUMABLE Resources

Instructions pour les opérations d’index en ligneGuidelines for Online Index Operations

Informations complémentairesMore information