Compartir por


ALTERAR CONFIGURACIÓN CON ALCANCE DE BASE DE DATOS (Transact-SQL)

Se aplica a: SQL Server 2016 (13.x) y versiones posteriores de Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics SQL Database en Microsoft Fabric

Use este comando para habilitar varias opciones de configuración de base de datos en el nivel de base de datos individual .

Important

Se admiten diferentes DATABASE SCOPED CONFIGURATION opciones en distintas versiones y plataformas del motor de base de datos de SQL. En este artículo se describen todas lasDATABASE SCOPED CONFIGURATION opciones. Las versiones en las que corresponda se indican. Asegúrate de usar la sintaxis disponible en la versión del servicio que estás usando.

La siguiente configuración se admite en Azure SQL Database, SQL Database en Microsoft Fabric, Azure SQL Managed Instance y en SQL Server, como se indica en la línea Se aplica a cada opción de la sección Argumentos :

  • Borrar la caché de procedimientos.
  • Establezca el parámetro MAXDOP en un valor recomendado (1, 2, ...) para la base de datos principal en función de lo que funciona mejor para esa carga de trabajo concreta y establezca un valor diferente para las bases de datos de réplica secundarias usadas por las consultas de informes. Para obtener instrucciones sobre cómo elegir un MAXDOP, revise Configuración del servidor: grado máximo de paralelismo.
  • Definir el modelo de estimación de la cardinalidad del optimizador de consultas independiente de la base de datos en el nivel de compatibilidad.
  • Habilitar o deshabilitar el examen de parámetros en el nivel de base de datos.
  • Habilitar o deshabilitar las revisiones de optimización de consulta en el nivel de base de datos.
  • Habilitar o deshabilitar la caché de identidad en el nivel de base de datos.
  • Habilitar o deshabilitar un código auxiliar de plan compilado que se almacenará en caché cuando se compile un lote por primera vez.
  • Habilitar o deshabilitar la recopilación de estadísticas de ejecución para los módulos de Transact-SQL compilados de forma nativa.
  • Habilitar o deshabilitar las opciones en línea de forma predeterminada para las instrucciones de DDL que admiten la sintaxis ONLINE =.
  • Habilitar o deshabilitar las opciones reanudables de forma predeterminada para las instrucciones de DDL que admiten la sintaxis RESUMABLE =.
  • Habilite o deshabilite el procesamiento de consultas inteligentes en las características de bases de datos SQL .
  • Habilitar o deshabilitar la opción plan acelerado para forzar.
  • Habilite o deshabilite la funcionalidad de autodrop de las tablas temporales globales.
  • Habilitar o deshabilitar la infraestructura de generación de perfiles ligera de consultas.
  • Habilitar o deshabilitar el nuevo mensaje de error String or binary data would be truncated.
  • Habilitar o deshabilitar la recopilación del último plan de ejecución real en sys.dm_exec_query_plan_stats.
  • Especifica el número de minutos que una operación de índice reanudábil pausa antes de que el Motor de Base de Datos la aborte automáticamente.
  • Habilitar o deshabilitar la espera de bloqueos con prioridad baja para la actualización asincrónica de las estadísticas.
  • Habilite o deshabilite la carga de resúmenes del libro de contabilidad en Azure Blob Storage.
  • Establece la versión predeterminada del índice de texto completo (1 o 2).
  • En Azure Synapse Analytics, establece el nivel de compatibilidad de una base de datos de usuario.

Convenciones de sintaxis de Transact-SQL

Syntax

Sintaxis de SQL Server, Azure SQL Database, SQL Database en Microsoft Fabric e Instancia administrada de Azure SQL:

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

< set_options > ::=
{
      ACCELERATED_PLAN_FORCING = { ON | OFF }
    | ALLOW_STALE_VECTOR_INDEX = { ON | OFF }
    | ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY = { ON | OFF }
    | BATCH_MODE_ADAPTIVE_JOINS = { ON | OFF }
    | BATCH_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF }
    | BATCH_MODE_ON_ROWSTORE = { ON | OFF }
    | CE_FEEDBACK = { ON | OFF }
    | DEFERRED_COMPILATION_TV = { ON | OFF }
    | DOP_FEEDBACK = { ON | OFF }
    | ELEVATE_ONLINE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
    | ELEVATE_RESUMABLE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
    | EXEC_QUERY_STATS_FOR_SCALAR_FUNCTIONS = { ON | OFF }
    | FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION = { ON | OFF }   
    | FULLTEXT_INDEX_VERSION = <version>
    | IDENTITY_CACHE = { ON | OFF }
    | INTERLEAVED_EXECUTION_TVF = { ON | OFF }
    | ISOLATE_SECURITY_POLICY_CARDINALITY  = { ON | OFF }
    | GLOBAL_TEMPORARY_TABLE_AUTO_DROP = { ON | OFF }
    | LAST_QUERY_PLAN_STATS = { ON | OFF }
    | LEDGER_DIGEST_STORAGE_ENDPOINT = { <endpoint URL string> | OFF }
    | LEGACY_CARDINALITY_ESTIMATION = { ON | OFF | PRIMARY }
    | LIGHTWEIGHT_QUERY_PROFILING = { ON | OFF }
    | MAXDOP = { <value> | PRIMARY }
    | MEMORY_GRANT_FEEDBACK_PERCENTILE_GRANT = { ON | OFF }
    | MEMORY_GRANT_FEEDBACK_PERSISTENCE = { ON | OFF }
    | OPTIMIZE_FOR_AD_HOC_WORKLOADS = { ON | OFF }
    | OPTIMIZED_PLAN_FORCING = { ON | OFF }
    | OPTIMIZED_SP_EXECUTESQL = { ON | OFF }
    | OPTIONAL_PARAMETER_OPTIMIZATION = { ON | OFF }
    | PARAMETER_SENSITIVE_PLAN_OPTIMIZATION = { ON | OFF }
    | PARAMETER_SNIFFING = { ON | OFF | PRIMARY }
    | PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES = <time>
    | PREVIEW_FEATURES = { ON | OFF }
    | QUERY_OPTIMIZER_HOTFIXES = { ON | OFF | PRIMARY }
    | ROW_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF }
    | TSQL_SCALAR_UDF_INLINING = { ON | OFF }
    | VERBOSE_TRUNCATION_WARNINGS = { ON | OFF }
    | XTP_PROCEDURE_EXECUTION_STATISTICS = { ON | OFF }
    | XTP_QUERY_EXECUTION_STATISTICS = { ON | OFF }
}

Sintaxis para Azure Synapse Analytics:

ALTER DATABASE SCOPED CONFIGURATION
{
    SET <set_options>
}
[;]

< set_options > ::=
{
    DW_COMPATIBILITY_LEVEL = { AUTO | 10 | 20 | 30 | 40 | 50 | 9000 }
}

Arguments

PARA SECUNDARIA

Especifica la configuración de las bases de datos secundarias. Todas las bases de datos secundarias deben tener los valores idénticos.

CLEAR PROCEDURE_CACHE [ plan_handle ]

Borra la memoria caché del procedimiento (plan) de la base de datos. Puede ejecutar este comando tanto en la principal como en las secundarias.

Para borrar un único plan de consulta de la memoria caché del plan, especifique un identificador de plan de consulta.

Se aplica a: Especificar un handle de plan de consulta está disponible en SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database y Azure SQL Managed Instance.

Opciones de Set

DEFERRED_COMPILATION_TV = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilita un mecanismo optimizado para forzar el plan de consulta, aplicable a todos los formularios de plan para forzar, como Plan para forzar el almacén de consultas, Ajuste automático o la sugerencia de consulta USE PLAN. El valor predeterminado es ON.

Note

No se recomienda deshabilitar la fuerza del plan acelerado.

ALLOW_STALE_VECTOR_INDEX = { ON | OFF }

Se aplica a: Azure SQL Database y SQL Database en Microsoft Fabric

Actualmente, en Azure SQL Database y SQL Database en Microsoft Fabric, los índices vectoriales hacen que las tablas sean de solo lectura. Para permitir que la tabla sea escribible, se utiliza la ALLOW_STALE_VECTOR_INDEX configuración con alcance de la base de datos.

ALTER DATABASE SCOPED CONFIGURATION
SET ALLOW_STALE_VECTOR_INDEX = ON;
GO

SELECT *
FROM sys.database_scoped_configurations
WHERE [name] = 'ALLOW_STALE_VECTOR_INDEX';

Cuando ALLOW_STALE_VECTOR_INDEX = ON, el índice vectorial no se actualiza al insertar o actualizar nuevos datos en la tabla. Para actualizar el índice vectorial, debes dejarlo caer y recrearlo.

Note

La ALLOW_STALE_VECTOR_INDEX opción de configuración con alcance de base de datos no está disponible actualmente en SQL Server 2025 (17.x).

ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY

se aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Si habilita las actualizaciones asincrónicas de estadísticas, habilitar esta configuración hace que la solicitud en segundo plano actualice las estadísticas para esperar un Sch-M bloqueo en una cola de prioridad baja. Esta espera evita bloquear otras sesiones en escenarios de alta simultaneidad. Para obtener más información, vea AUTO_UPDATE_STATISTICS_ASYNC. El valor predeterminado es OFF.

BATCH_MODE_ADAPTIVE_JOINS = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilita o deshabilita las combinaciones adaptables en modo por lotes en el ámbito de la base de datos, a la vez que mantiene el nivel de compatibilidad de la base de datos 140 y versiones posteriores. El valor predeterminado es ON. Las combinaciones adaptables en modo por lotes son una característica que forma parte del Procesamiento de consultas inteligentes incorporado en SQL Server 2017 (14.x).

En el caso del nivel de compatibilidad de la base de datos 130 o versiones anteriores, esta configuración con ámbito de base de datos no tiene ningún efecto.

BATCH_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilita o deshabilita los comentarios de concesión de memoria del modo por lotes en el ámbito de la base de datos, al tiempo que mantiene el nivel de compatibilidad de la base de datos 140 y versiones posteriores. El valor predeterminado es ON. Los comentarios de concesión de memoria en modo por lotes, que se incorporaron en SQL Server 2017 (14.x), forman parte del conjunto de características de procesamiento de consultas inteligentes. Para más información, consulte Comentarios de concesión de memoria.

En el caso del nivel de compatibilidad de la base de datos 130 o versiones anteriores, esta configuración con ámbito de base de datos no tiene ningún efecto.

BATCH_MODE_ON_ROWSTORE = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilita o deshabilita el modo por lotes en el almacén de filas en el ámbito de la base de datos, a la vez que mantiene el nivel de compatibilidad de la base de datos 150 y versiones posteriores. El valor predeterminado es ON. El modo por lotes en el almacenamiento de filas es una característica que forma parte de la familia de características Procesamiento de consultas inteligente.

En el caso del nivel de compatibilidad de la base de datos 140 o versiones anteriores, esta configuración con ámbito de base de datos no tiene ningún efecto.

CE_FEEDBACK = { ON | OFF }

se aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Los comentarios de CE abordan los problemas de regresión percibidos que resultan de supuestos incorrectos del modelo de CE al usar la CE predeterminada (CE120 o superior). Los comentarios de CE pueden usar de forma selectiva diferentes suposiciones del modelo. Requiere que el Almacén de consultas esté habilitado y en modo READ_WRITE. Para obtener más información, consulte Comentarios de estimación de cardinalidad (CE). El valor predeterminado es ON en el nivel de compatibilidad de la base de datos 160 y versiones posteriores.

DEFERRED_COMPILATION_TV = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilita o deshabilita la compilación diferida de variables de tabla en el ámbito de la base de datos al tiempo que mantiene el nivel de compatibilidad de la base de datos 150 o superior. El valor predeterminado es ON. La compilación diferida de variables de tabla es una característica que forma parte de la familia de características de procesamiento de consultas inteligentes .

En el caso del nivel de compatibilidad de la base de datos 140 o versiones anteriores, esta configuración con ámbito de base de datos no tiene ningún efecto.

DOP_FEEDBACK = { ON | OFF }

Se aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database, SQL Database en Microsoft Fabric, Instancia administrada de Azure SQL con SQL Server 2025 o Always-up-to-dateupdate policy

Identifica las ineficiencias de paralelismo de las consultas repetidas según el tiempo transcurrido y las esperas. Si el uso del paralelismo es ineficaz, los comentarios de DOP reducen el DOP para la siguiente ejecución de la consulta, desde lo que sea el DOP configurado y comprueba si ayuda. Requiere que el Almacén de consultas esté habilitado y en modo READ_WRITE. Para obtener más información, consulte Comentarios sobre el grado de paralelismo (DOP). El valor predeterminado es OFF.

ELEVATE_ONLINE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Le permite seleccionar opciones que hacen que el motor eleve automáticamente las operaciones admitidas a ONLINE.

Esta opción solo se aplica a las instrucciones de DDL que admiten WITH (ONLINE = <syntax>). Los índices XML no se ven afectados.

El valor predeterminado es OFF, lo que significa que las operaciones no se elevan a en línea a menos que se especifiquen en la instrucción . sys.database_scoped_configurations refleja el valor actual de ELEVATE_ONLINE. Estas opciones solo se aplican a las operaciones compatibles con online. Puede invalidar la configuración predeterminada enviando una instrucción con la opción ONLINE especificada.

FAIL_UNSUPPORTED

Este valor eleva todas las operaciones DDL compatibles a ONLINE. Las operaciones que no admiten la ejecución en línea producen un error y producen un error.

Agregar una columna a una tabla es una operación en línea en el caso general. En algunos escenarios, por ejemplo, cuando agregar una columna que no acepta valores NULL, no se puede agregar una columna en línea. En esos casos, si FAIL_UNSUPPORTED se establece, se produce un error en la operación.

WHEN_SUPPORTED

Este valor eleva las operaciones que admiten ONLINE. Las operaciones que no admiten en línea se ejecutan sin conexión.

Para obtener más información, consulte Directrices para las operaciones de índice en línea.

ELEVATE_RESUMABLE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Le permite seleccionar opciones que hacen que el motor eleve automáticamente las operaciones admitidas a RESUMABLE.

Esta opción solo se aplica a las instrucciones de DDL que admiten WITH (RESUMABLE = <syntax>). Los índices XML no se ven afectados.

El valor predeterminado es OFF, lo que significa que las operaciones no se pueden reanudar a menos que se especifiquen en la instrucción . sys.database_scoped_configurations refleja el valor actual de ELEVATE_RESUMABLE. Estas opciones solo se aplican a las operaciones que son compatibles con RESUMABLE. Puede invalidar la configuración predeterminada enviando una instrucción con la opción RESUMABLE especificada.

FAIL_UNSUPPORTED

Este valor eleva todas las operaciones DDL admitidas a RESUMABLE. Las operaciones que no admiten la ejecución reanudable producen un error y producen un error.

WHEN_SUPPORTED

Este valor eleva las operaciones que admiten RESUMABLE. Las operaciones que no admiten reanudable se ejecutan sin enumerar.

Para obtener más información, consulte Directrices para las operaciones de índice en línea.

EXEC_QUERY_STATS_FOR_SCALAR_FUNCTIONS = { ON | OFF }

se aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Controla si las estadísticas de ejecución de funciones escalares definidas por el usuario (UDF) aparecen en la vista del sistema de sys.dm_exec_function_stats . En el caso de algunas cargas de trabajo intensivas que tienen un uso intensivo de UDF, la recopilación de estadísticas de ejecución de funciones podría provocar una sobrecarga de rendimiento notable. Puede evitar esta sobrecarga estableciendo la EXEC_QUERY_STATS_FOR_SCALAR_FUNCTIONS configuración con ámbito de base de datos en OFF. El valor predeterminado es ON.

FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION = { ON | OFF }

se aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Al solucionar problemas de consultas de larga duración con la generación de perfiles de estadísticas de ejecución de consultas ligeras o la DMV de sys.dm_exec_query_statistics_xml, FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION sql Server genera un fragmento XML de plan de presentación que incluye .ParameterRuntimeValue

Important

No habilite la FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION opción de configuración de ámbito de base de datos continuamente en un entorno de producción. Habilite solo con fines de solución de problemas limitados por tiempo. Esta opción de configuración con ámbito de base de datos agrega una sobrecarga adicional y posiblemente significativa de CPU y memoria, ya que SQL Server crea un fragmento XML de plan de presentación con información de parámetros en tiempo de ejecución, tanto si la infraestructura del perfil de estadísticas de ejecución de consultas ligeras como DMV sys.dm_exec_query_statistics_xml está habilitada o no.

FULLTEXT_INDEX_VERSION

Aplica a: SQL Server 2025 (17.x) y versiones posteriores, Azure SQL Database y Azure SQL Managed Instance

Establece la versión indexada en texto completo para que se utilice al crear o reconstruir índices. Esta configuración solo surte efecto cuando se emite una CREATE FULLTEXT INDEX instrucción para nuevos índices o una ALTER FULLTEXT CATALOG ... REBUILD instrucción para recompilar todos los índices de un catálogo.

A fecha de SQL Server 2025 (17.x), las versiones disponibles son:

Versión Comments
1 Especifica índices nuevos y reconstruidos que utilizan el filtro de texto completo heredado y los componentes de rompepalabras de SQL Server 2022 (16.x) y versiones anteriores, para futuras poblaciones y consultas. Como estos componentes ya no están incluidos en SQL Server 2025 (17.x) y versiones posteriores, deben copiarse manualmente desde una instancia anterior.
2 (valor predeterminado) Especifica índices nuevos y reconstruidos que utilizan el filtro de texto completo y los componentes de rompepalabras incluidos en SQL Server 2025 (17.x), para futuras poblaciones y consultas.

La FULLTEXT_INDEX_VERSION configuración también controla qué componentes de texto completo son los siguientes procedimientos almacenados del sistema, vistas y funciones que informan y usan:

IDENTITY_CACHE = { ON | OFF }

se aplica a: SQL Server 2017 (14.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilita o deshabilita la caché de identidad en el nivel de base de datos. El valor predeterminado es ON. El almacenamiento en caché de identidades mejora el INSERT rendimiento de las tablas con columnas de identidad. Para evitar huecos en los valores de una columna de identidad cuando el servidor se reinicia inesperadamente o conmuta por error a un servidor secundario, deshabilite la IDENTITY_CACHE opción . Esta opción es similar a la marca de seguimiento existente 272, pero se establece en el nivel de base de datos.

Puede establecer esta opción solo para la réplica principal. Para obtener más información, vea las columnas de identidad.

INTERLEAVED_EXECUTION_TVF = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilita o deshabilita la ejecución intercalada para las funciones con valores de tabla de varias instrucciones en el ámbito de la base de datos o instrucción, a la vez que mantiene el nivel de compatibilidad de la base de datos 140 o superior. El valor predeterminado es ON. La ejecución intercalada es una característica que forma parte del procesamiento de consultas adaptables en Azure SQL Database. Para obtener más información, consulte Procesamiento inteligente de consultas.

En el caso del nivel de compatibilidad de la base de datos 130 o versiones anteriores, esta configuración con ámbito de base de datos no tiene ningún efecto.

Solo en SQL Server 2017 (14.x), la opción INTERLEAVED_EXECUTION_TVF tenía el nombre anterior de DISABLE_INTERLEAVED_EXECUTION_TVF.

ISOLATE_SECURITY_POLICY_CARDINALITY = { ON | APAGADO}

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Permite controlar si un predicado de seguridad a nivel de fila (RLS) afecta la cardinalidad del plan de ejecución de la consulta global del usuario. El valor predeterminado es OFF. Cuando ISOLATE_SECURITY_POLICY_CARDINALITY está activado, un predicado RLS no afecta a la cardinalidad de un plan de ejecución. Por ejemplo, imagine una tabla que contiene 1 millón de filas y un predicado RLS que restringe el resultado a 10 filas para un usuario específico que emite la consulta. Con esta configuración con ámbito de base de datos establecida en OFF, la estimación de cardinalidad de este predicado es 10. Cuando esta configuración con ámbito de base de datos es ON, la optimización de consultas calcula 1 millón de filas. Se recomienda usar el valor por defecto para la mayoría de las cargas de trabajo.

GLOBAL_TEMPORARY_TABLE_AUTO_DROP = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Establece la funcionalidad de autodrop para las tablas temporales globales. El valor predeterminado es ON, lo que significa que las tablas temporales globales se quitan automáticamente cuando no se usan en ninguna sesión o tarea. Cuando se establece OFFen , solo se pueden quitar explícitamente tablas temporales globales mediante una DROP TABLE instrucción o se quitan automáticamente en el reinicio del servicio.

  • En Bases de datos únicas y grupos elásticos de Azure SQL Database, establezca esta opción en las bases de datos de usuario individuales.
  • En SQL Server y Azure SQL Managed Instance, establezca esta opción en tempdb. La configuración en bases de datos de usuario individuales no tiene ningún efecto.

LAST_QUERY_PLAN_STATS = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Permite habilitar o deshabilitar la recopilación de las estadísticas del último plan de consulta (equivalente a un plan de ejecución real) en sys.dm_exec_query_plan_stats. El valor predeterminado es OFF.

LEDGER_DIGEST_STORAGE_ENDPOINT = { <cadena de dirección URL del punto de conexión> | OFF }

Aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database

Habilita o deshabilita la carga de resúmenes del libro de contabilidad en Azure Blob Storage. Para habilitar la carga de resúmenes del libro de contabilidad, especifique el punto de conexión de una cuenta de Azure Blob Storage. Para deshabilitar la carga de resúmenes del libro de contabilidad, establezca el valor de opción en OFF. El valor predeterminado es OFF.

LEGACY_CARDINALITY_ESTIMATION = { ON | OFF | PRIMARIA }

Permite establecer el modelo de estimación de la cardinalidad del optimizador de consultas en SQL Server 2012 y versiones anteriores, independientemente del nivel de compatibilidad de la base de datos. El valor predeterminado es OFF, que establece el modelo de estimación de cardinalidad del optimizador de consultas en función del nivel de compatibilidad de la base de datos. Establecer LEGACY_CARDINALITY_ESTIMATION en ON es equivalente a habilitar la marca de seguimiento 9481.

  • Para establecer esta opción en el nivel de consulta, agregue la sugerencia de QUERYTRACEONconsulta.
  • Para establecer esta opción en el nivel de consulta en SQL Server 2016 (13.x) con Service Pack 1 y versiones posteriores, agregue la sugerencia de consultaUSE HINT en lugar de usar la marca de seguimiento.

PRIMARY

Este valor solo es válido en secundarias mientras la base de datos de en la principal y especifica que la configuración del modelo de estimación de cardinalidad del optimizador de consultas en todos los secundarios es el valor establecido para la principal. Si cambia la configuración en la base principal del modelo de estimación de cardinalidad del optimizador de consultas, el valor de las secundarias cambia en consecuencia. PRIMARY es la configuración predeterminada para las secundarias.

Para obtener más información, vea Estimación de cardinalidad (SQL Server).

LIGHTWEIGHT_QUERY_PROFILING = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Permite habilitar o deshabilitar la infraestructura ligera de generación de perfiles de consulta. La infraestructura ligera de generación de perfiles de consulta (LWP) está habilitada de forma predeterminada y proporciona datos de rendimiento de consulta de una forma más eficaz que los mecanismos de generación de perfiles estándar. El valor predeterminado es ON.

MAXDOP = {<valor> | PRIMARIA }

<valor>

Especifica el valor predeterminado Grado máximo de paralelismo (MAXDOP) que se debe usar para las instrucciones. 0 es el valor predeterminado e indica que se usa la configuración del servidor en su lugar. El MAXDOP en el ámbito de la base de datos anula (a menos que esté configurado en 0) el max degree of parallelism conjunto a nivel de servidor por sp_configure. Las sugerencias de consulta aún pueden reemplazar el valor MAXDOP con ámbito de base de datos con el fin de optimizar las consultas específicas que requieran otra configuración. Todos estos ajustes están limitados por el MAXDOP establecido para el grupo de carga de trabajo.

Use la opción MAXDOP para limitar el número de procesadores que se usarán en la ejecución del plan en paralelo. SQL Server considera los planes de ejecución en paralelo para las consultas, las operaciones de lenguaje de definición de datos (DDL) de índice, la inserción en paralelo, la modificación de columna en línea, la colección de estadísticas en paralelo y el rellenado de cursor estático y controlado por conjuntos de claves.

El límite del grado máximo de paralelismo (MAXDOP) se establece por tarea. No es un límite por solicitud ni por consulta. Esto significa que durante la ejecución paralela de una consulta, una sola petición puede generar múltiples tareas, que se asignan a un planificador. Para obtener más información, consulte la guía de arquitectura de tareas y subprocesos de .

Para establecer esta opción a nivel de instancia, véase Configuración del servidor: grado máximo de paralelismo.

En Azure SQL Database, la configuración de ámbito de base de datos MAXDOP de las nuevas bases de datos de grupos simples y elásticos se establece en 8 de forma predeterminada. Para más información y recomendaciones sobre cómo configurar MAXDOP de forma óptima en Azure SQL Database, consulte Configuración de MAXDOP en Azure SQL Database.

PRIMARY

Solo se puede establecer para los secundarios, mientras que la base de datos de en la principal e indica que la configuración es la establecida para la principal. Si cambia la configuración de la principal, el valor en las secundarias cambia en consecuencia sin necesidad de establecer explícitamente el valor de las secundarias. PRIMARY es la configuración predeterminada para las secundarias.

Para obtener más información, vea Grado de paralelismo.

MEMORY_GRANT_FEEDBACK_PERCENTILE_GRANT = { ON | OFF }

Se aplica a: SQL Server 2022 (16.x) y versiones posteriores, y Azure SQL Database

Habilita o deshabilita la característica percentil de concesión de memoria para todas las ejecuciones de consulta que se inician en la base de datos. El valor predeterminado es ON. Para obtener más información, consulte Comentarios de concesión de memoria en modo percentil y persistencia.

En el caso del nivel de compatibilidad de la base de datos 140 o versiones anteriores, esta configuración con ámbito de base de datos no tiene ningún efecto.

MEMORY_GRANT_FEEDBACK_PERSISTENCE = { ON | OFF }

se aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilita o deshabilita la persistencia de comentarios de concesión de memoria para todas las ejecuciones de consultas que se inician en la base de datos. El valor predeterminado es ON. Para obtener más información, consulte Comentarios de concesión de memoria en modo percentil y persistencia.

En el caso del nivel de compatibilidad de la base de datos 140 o versiones anteriores, esta configuración con ámbito de base de datos no tiene ningún efecto.

OPTIMIZE_FOR_AD_HOC_WORKLOADS = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilita o deshabilita el almacenamiento de un código auxiliar de plan compilado en la memoria caché cuando se compila un lote por primera vez. El valor predeterminado es OFF. Después de habilitar la configuración OPTIMIZE_FOR_AD_HOC_WORKLOADS de ámbito de la base de datos para una base de datos, la base de datos almacena un código auxiliar de plan compilado en caché cuando se compila un lote por primera vez. Los códigos auxiliares de plan usan menos memoria que el plan compilado completo. Si un lote se compila o se ejecuta de nuevo, el motor de base de datos quita el código auxiliar del plan compilado y lo reemplaza por un plan compilado completo.

OPTIMIZED_PLAN_FORCING = { ON | OFF }

Aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database

El forzado de plan optimizado reduce la sobrecarga de compilación causado por la repetición de consultas forzadas. El valor predeterminado es ON. Una vez generado el plan de ejecución de consultas, los pasos de compilación específicos se almacenan para su reutilización como un script de reproducción de optimización. Un script de reproducción de optimización se almacena como parte del XML del plan de presentación comprimido en Almacén de consultas, en un atributo OptimizationReplay oculto. Para más información, vea Forzado de plan optimizado con Almacén de consultas.

OPTIMIZED_SP_EXECUTESQL = { ON | OFF }

Aplica a: SQL Server 2025 (17.x), Azure SQL Database y base de datos SQL en Microsoft Fabric

Habilita o deshabilita el comportamiento de serialización de compilación de sp_executesql cuando se compila un lote. El valor predeterminado es OFF. Permitir que los lotes que antes sp_executesql serializen el proceso de compilación reduce el efecto de las tormentas de compilación. Una tormenta de compilación es una situación en la que se compila un gran número de consultas simultáneamente, lo que provoca problemas de rendimiento y contención de recursos.

Cuando OPTIMIZED_SP_EXECUTESQL es ON, la primera ejecución de sp_executesql compila e inserta su plan compilado en la memoria caché del plan. Otras sesiones anulan la espera del bloqueo de compilación y reutilizan el plan una vez que esté disponible. Este comportamiento hace sp_executesql que actúe como objetos como procedimientos almacenados y desencadenadores desde una perspectiva de compilación.

OPTIONAL_PARAMETER_OPTIMIZATION = { ON | OFF }

Aplica a: SQL Server 2025 (17.x), Azure SQL Database y base de datos SQL en Microsoft Fabric

Activa o desactiva la función de optimización opcional del plan de parámetros (OPPO). El valor predeterminado comienza ON en el nivel de compatibilidad de la base de datos 170.

Cuando está habilitada, la optimización del plan adaptable genera varios planes de ejecución para las consultas que incluyen parámetros opcionales. Estos planes suelen usar predicados en forma de:

  • @p IS NULL AND @p1 IS NOT NULL
  • @p IS NULL OR @p1 IS NOT NULL

La característica puede elegir un plan más óptimo en tiempo de ejecución en función de si el parámetro es NULL, lo que mejora el rendimiento de las consultas que, de lo contrario, podrían tener un rendimiento poco óptimo para estos patrones de consulta.

PARAMETER_SENSITIVE_PLAN_OPTIMIZATION = { ON | OFF }

se aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

La optimización del plan de confidencialidad de parámetros (PSP) aborda el escenario en el que un único plan almacenado en caché para una consulta con parámetros no es óptimo para todos los valores de parámetro entrantes posibles. Esta situación se produce con distribuciones de datos no uniformes. El valor predeterminado es ON a partir del nivel de compatibilidad de la base de datos 160. Para más información, consulte Optimización del plan confidencial de parámetros.

PARAMETER_SNIFFING = { ON | OFF | PRIMARIA }

Habilita o deshabilita el examen de parámetros. El valor predeterminado es ON. Establecer PARAMETER_SNIFFING en OFF equivale a habilitar la marca de seguimiento 4136.

  • Para lograrlo en el nivel de consulta, consulte la sugerencia de consulta OPTIMIZE FOR UNKNOWN.
  • En SQL Server 2016 (13.x) SP1 y versiones posteriores, para lograrlo en el nivel de consulta, también está disponible la sugerencia de consulta USE HINT.

PRIMARY

Este valor solo es válido en secundarias mientras la base de datos está en la base de datos principal. Especifica que el valor de esta configuración en todos los secundarios es el valor establecido para el principal. Si cambia la configuración de la base de datos principal para usar parámetro cambia, el valor de las secundarias cambia en consecuencia sin necesidad de establecer explícitamente el valor de secundarias. PRIMARY es la configuración predeterminada para las secundarias.

Para obtener más información sobre PARAMETER_SNIFFING, vea "I smell a parameter!".

PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES

se aplica a: SQL Server 2022 (16.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

La PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES opción determina cuánto tiempo (en minutos) se pausa el índice reanudable antes de que el motor de base de datos lo anule automáticamente.

  • El valor predeterminado se establece en un día (1440 minutos).
  • La duración mínima se establece en 1 minuto.
  • La duración máxima es de 71 582 minutos.
  • Cuando se establece en 0, una operación en pausa nunca anula automáticamente.

El valor actual de esta opción se muestra en sys. database_scoped_configurations.

PREVIEW_FEATURES = { ON | OFF }

Se aplica a: SQL Server 2025 (17.x), Azure SQL Database, SQL Database en Microsoft Fabric

Precaución

Las características en versión preliminar no se recomiendan para entornos de producción.

Permite el uso de características en versión preliminar. Para más información, consulte Características de versión preliminar en SQL Server.

El valor predeterminado es OFF.

Para obtener un ejemplo de cómo usar esta opción, consulte Uso de características en versión preliminar en SQL Server.

QUERY_OPTIMIZER_HOTFIXES = { ON | OFF | PRIMARIA }

Aplica a: SQL Server 2016 (13.x) y versiones posteriores, Azure SQL Database y Azure SQL Managed Instance

Habilita o deshabilita las revisiones de optimización de consulta independientemente del nivel de compatibilidad de la base de datos. El valor predeterminado es OFF, que deshabilita las revisiones de optimización de consultas que se publicaron después del nivel de compatibilidad más alto disponible para una versión específica (posterior a RTM). Establecer QUERY_OPTIMIZER_HOTFIXES en ON es equivalente a habilitar la marca de seguimiento 4199.

  • Para establecer esta opción en el nivel de consulta, agregue la sugerencia de QUERYTRACEONconsulta.
  • Para habilitar esta característica en el nivel de consulta en SQL Server 2016 (13.x) con Service Pack 1 y versiones posteriores, agregue la sugerencia de consulta USE HINT en lugar de usar la marca de seguimiento.

Cuando se usa la QUERYTRACEON sugerencia para habilitar el optimizador de consultas predeterminado de SQL Server 7.0 a las versiones de SQL Server 2012 (11.x) o las revisiones del optimizador de consultas, crea una condición OR entre la sugerencia de consulta y la configuración con ámbito de base de datos. Si alguna de las opciones está habilitada, se aplican las configuraciones con ámbito de base de datos.

PRIMARY

Este valor solo es válido en secundarias mientras la base de datos está en la base de datos principal. Especifica que el valor de esta configuración en todos los secundarios es el valor establecido para el principal. Si cambia la configuración de la principal, el valor en las secundarias cambia en consecuencia sin necesidad de establecer explícitamente el valor de las secundarias. PRIMARY es la configuración predeterminada para las secundarias.

Para obtener más información sobre QUERY_OPTIMIZER_HOTFIXES, vea El modelo de mantenimiento 4199 del optimizador de consultas de SQL Server.

ROW_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilite o deshabilite los comentarios de concesión de memoria del modo de fila en el ámbito de la base de datos mientras mantiene el nivel de compatibilidad de la base de datos 150 o superior. El valor predeterminado es ON. Los comentarios de concesión de memoria en modo de fila son una característica que forma parte del procesamiento de consultas inteligentes introducido en SQL Server 2017 (14.x). El modo por filas se admite en SQL Server 2019 (15.x) y Azure SQL Database. Para obtener más información sobre los comentarios sobre la concesión de memoria, consulte Comentarios de concesión de memoria.

En el caso del nivel de compatibilidad de la base de datos 140 o versiones anteriores, esta configuración con ámbito de base de datos no tiene ningún efecto.

TSQL_SCALAR_UDF_INLINING = { ON | OFF }

Aplica a: SQL Server 2019 (15.x) y versiones posteriores, y Azure SQL Database (la función está en vista previa)

Habilite o deshabilite la inserción de UDF escalar de T-SQL en el ámbito de la base de datos mientras mantiene el nivel de compatibilidad de la base de datos 150 o superior. El valor predeterminado es ON. La inserción UDF escalar de T-SQL forma parte de la familia de características Procesamiento de consultas inteligente.

Note

En el caso del nivel de compatibilidad de la base de datos 140 o versiones anteriores, esta configuración con ámbito de base de datos no tiene ningún efecto.

VERBOSE_TRUNCATION_WARNINGS = { ON | OFF }

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

Habilitar o deshabilitar el nuevo mensaje de error String or binary data would be truncated. El valor predeterminado es ON. SQL Server 2019 (15.x) introdujo un mensaje de error más específico (2628) para este escenario:

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

Cuando se establece en ON en el nivel de compatibilidad de la base de datos 150, los errores de truncamiento generan el nuevo mensaje de error 2628 para proporcionar más contexto y simplificar el proceso de solución de problemas.

Cuando se establece en OFF en el nivel de compatibilidad de la base de datos 150, los errores de truncamiento generan el mensaje de error anterior 8152.

En el caso del nivel de compatibilidad de la base de datos 140 o versiones anteriores, el mensaje de error 2628 sigue siendo un mensaje de error de participación que requiere que la marca de seguimiento 460 esté habilitada y que esta configuración con ámbito de base de datos no tenga ningún efecto.

XTP_PROCEDURE_EXECUTION_STATISTICS = { ON | OFF }

Se aplica a: Azure SQL Database y Azure SQL Managed Instance

Habilita o deshabilita la recopilación de estadísticas de ejecución a nivel de módulo para los módulos de T-SQL compilados de forma nativa en la base de datos actual. El valor predeterminado es OFF. Las estadísticas de ejecución se reflejan en sys.dm_exec_procedure_stats.

Las estadísticas de ejecución a nivel de módulo de los módulos de T-SQL compilados de forma nativa se recopilan si esta opción está activada o si se habilita la recopilación de estadísticas mediante sp_xtp_control_proc_exec_stats.

XTP_QUERY_EXECUTION_STATISTICS = { ON | OFF }

Se aplica a: Azure SQL Database y Azure SQL Managed Instance

Habilita o deshabilita la recopilación de estadísticas de ejecución a nivel de instrucción para los módulos de T-SQL compilados de forma nativa en la base de datos actual. El valor predeterminado es OFF. Las estadísticas de ejecución se reflejan en sys.dm_exec_query_stats y en el Almacén de consultas.

Las estadísticas de ejecución de nivel de instrucción para los módulos T-SQL compilados de forma nativa se recopilan si esta opción es ON, o si la recopilación de estadísticas está habilitada a través de sp_xtp_control_query_exec_stats.

Para obtener más información sobre la supervisión del rendimiento de los módulos transact-SQL compilados de forma nativa, consulte Supervisión del rendimiento de los procedimientos almacenados compilados de forma nativa.

DW_COMPATIBILITY_LEVEL = { AUTO | 10 | 20 | 30 | 40 | 50 | 9000 }

Aplica solo a: Azure Synapse Analytics

Establece Transact-SQL y los comportamientos del procesamiento de consultas para que sean compatibles con la versión especificada del motor de base de datos. Una vez establecida, cuando una consulta se ejecuta en esa base de datos, solo usa las características compatibles. En cada nivel de compatibilidad, se admiten varias mejoras de procesamiento de consultas. Cada nivel absorbe la funcionalidad del nivel anterior. El nivel de compatibilidad de una base de datos se establece en AUTO de forma predeterminada cuando se crea por primera vez y es el valor recomendado. El nivel de compatibilidad se conserva incluso después de las operaciones de pausar o reanudar y de copia de seguridad o restauración de la base de datos. El valor predeterminado es AUTO.

Nivel de compatibilidad Comments
AUTO Default. El motor de Synapse Analytics actualiza automáticamente su valor. Se representa en 0sys.database_scoped_configurations. AUTO actualmente se asigna a la funcionalidad de nivel de compatibilidad 30.
10 Usa los comportamientos del motor de consultas y de Transact-SQL antes de la introducción del nivel de compatibilidad.
20 Primer nivel de compatibilidad que incluye los comportamientos del motor de consultas y de Transact-SQL controlados. El procedimiento almacenado del sistema sp_describe_undeclared_parameters se admite en este nivel.
30 Incluye nuevos comportamientos del motor de consultas.
40 Incluye nuevos comportamientos del motor de consultas.
50 Se soporta distribución multicolumna bajo este nivel. Para obtener más información, consulte CREATE TABLE, CREATE TABLE AS SELECT y CREATE MATERIALIZED VIEW AS SELECT.
9000 Vista previa del nivel de compatibilidad. La documentación específica de características llama a las características en versión preliminar que se incluyen en este nivel. Este nivel también incluye capacidades de nivel no9000 más alto.

Permissions

Requiere ALTER ANY DATABASE SCOPED CONFIGURATION en la base de datos. Un usuario con CONTROL permiso en una base de datos puede conceder este permiso.

Remarks

Aunque se pueden configurar bases de datos secundarias con valores de configuración de ámbito diferentes a los de su principal, en todas las bases de datos secundarias se usa la misma configuración. No puede configurar diferentes opciones para secundarias individuales.

La ejecución de esta instrucción borra la caché de procedimientos en la base de datos actual, lo que significa que se tendrán que volver a compilar todas las consultas.

Para las consultas de nombre de tres partes, se respeta la configuración de la conexión de base de datos actual para la consulta, excepto los módulos SQL (como procedimientos, funciones y desencadenadores) que se compilan en otro contexto de base de datos y, por tanto, usan las opciones de la base de datos en la que residen. De forma similar, al actualizar las estadísticas de forma asincrónica, se respeta la configuración de para la base de ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY datos donde residen las estadísticas.

El ALTER_DATABASE_SCOPED_CONFIGURATION evento se agrega como un evento DDL que se puede usar para desencadenar un desencadenador DDL. Es un elemento secundario del ALTER_DATABASE_EVENTS grupo de desencadenadores.

Al restaurar o adjuntar una base de datos, las opciones de configuración con ámbito de base de datos se transfieren y permanecen con la base de datos.

A partir de SQL Server 2019 (15.x), en Azure SQL Database e Instancia administrada de Azure SQL, se cambiaron algunos nombres de opción:

  • DISABLE_INTERLEAVED_EXECUTION_TVF se ha cambiado por INTERLEAVED_EXECUTION_TVF
  • DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK se ha cambiado por BATCH_MODE_MEMORY_GRANT_FEEDBACK
  • DISABLE_BATCH_MODE_ADAPTIVE_JOINS se ha cambiado por BATCH_MODE_ADAPTIVE_JOINS

Comprobar el estado de una opción de configuración con ámbito de base de datos

Para comprobar si una configuración está habilitada (1) o deshabilitada (0) en una base de datos, consulte sys.database_scoped_configurations. Por ejemplo, para comprobar el valor de LEGACY_CARDINALITY_ESTIMATION, use una consulta como esta:

USE <user_database>;
SELECT
    name,
    value,
    value_for_secondary
FROM sys.database_scoped_configurations
WHERE name = 'LEGACY_CARDINALITY_ESTIMATION';

Limitations

MAXDOP

La configuración granular puede invalidar la configuración global y el regulador de recursos puede limitar todas las demás configuraciones de MAXDOP. La siguiente lógica se aplica a la MAXDOP configuración:

  • La sugerencia de consulta invalida tanto sp_configure como la configuración con ámbito de base de datos. Si el valor MAXDOP del grupo de recursos se establece para el grupo de cargas de trabajo:

    • Si la pista de consulta está configurada en cero (0), se anula por la configuración del gobernador de recursos.

    • Si la pista de consulta no es cero (0), está limitada por la configuración del gobernador de recursos.

  • La configuración con alcance de base de datos (a menos que sea cero) anula la sp_configure configuración a menos que haya una pista de consulta y está limitada por la configuración del gobernador de recursos.

  • El ajuste del gobernador de recursos anula el sp_configure ajuste.

Recuperación de desastres geo-replicada (DR)

Las bases de datos secundarias legibles (grupos de disponibilidad AlwaysOn, Azure SQL Database y bases de datos con replicación geográfica de Azure SQL Managed Instance) usan el valor secundario comprobando el estado de la base de datos. Aunque la recompilación no ocurre en la conmutación por fallo, y técnicamente el nuevo primario tiene consultas que usan los ajustes secundarios, los ajustes entre primario y secundario solo varían cuando la carga de trabajo es diferente. Por lo tanto, las consultas almacenadas en caché usan la configuración óptima, mientras que las nuevas consultas eligen la nueva configuración adecuada para ellas.

DacFx

La ALTER DATABASE SCOPED CONFIGURATION función está disponible en SQL Server 2016 (13.x) y versiones posteriores, Azure SQL Database y Azure SQL Managed Instance. Debido a que afecta al esquema de la base de datos, las exportaciones del esquema (con o sin datos) no pueden importarse a SQL Server 2014 (12.x) y versiones anteriores. Por ejemplo, una exportación a un DACPAC o un BACPAC desde una base de datos de SQL Database o SQL Server 2016 (13.x) que usa esta característica no se pueden importar en un servidor de nivel descendente.

Metadata

La vista del sistema sys.database_scoped_configurations proporciona información sobre configuraciones con alcance dentro de una base de datos. Las opciones de configuración con alcance de base de datos solo aparecen sys.database_scoped_configurations como anulaciones a los ajustes predeterminados de todo el servidor. La vista de sistema sys.configurations solo muestra la configuración a nivel de servidor.

Examples

En estos ejemplos se muestra el uso de ALTER DATABASE SCOPED CONFIGURATION.

A. Conceder permiso

En este ejemplo se concede el permiso necesario para ejecutar ALTER DATABASE SCOPED CONFIGURATION en el usuario Joe.

GRANT ALTER ANY DATABASE SCOPED CONFIGURATION TO [Joe];

B. Establecer MAXDOP

En este ejemplo se establece MAXDOP = 1 para una base de datos principal y MAXDOP = 4 para una base de datos secundaria en un escenario de replicación geográfica.

ALTER DATABASE SCOPED CONFIGURATION
SET MAXDOP = 1;

ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET MAXDOP = 4;

Este ejemplo establece que MAXDOP es la misma base de datos que para su base de datos principal en un escenario de geo-replicación.

ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET MAXDOP = PRIMARY;

C. Establecer LEGACY_CARDINALITY_ESTIMATION

En este ejemplo se establece LEGACY_CARDINALITY_ESTIMATION en ON para una base de datos secundaria en un escenario de replicación geográfica.

ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET LEGACY_CARDINALITY_ESTIMATION = ON;

Este ejemplo se basa LEGACY_CARDINALITY_ESTIMATION en una base de datos secundaria tal como está en la base de datos primaria en un escenario de geo-replicación.

ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET LEGACY_CARDINALITY_ESTIMATION = PRIMARY;

D. Establecer PARAMETER_SNIFFING

En el ejemplo siguiente se establece PARAMETER_SNIFFING en OFF para una base de datos principal en un escenario de replicación geográfica.

ALTER DATABASE SCOPED CONFIGURATION
SET PARAMETER_SNIFFING = OFF;

En el ejemplo siguiente se establece PARAMETER_SNIFFING en OFF para una base de datos secundaria en un escenario de replicación geográfica.

ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET PARAMETER_SNIFFING = OFF;

En el ejemplo siguiente se establece PARAMETER_SNIFFING que una base de datos secundaria coincida con la base de datos principal en un escenario de replicación geográfica.

ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET PARAMETER_SNIFFING = PRIMARY;

E. Establecer QUERY_OPTIMIZER_HOTFIXES

Establezca QUERY_OPTIMIZER_HOTFIXES en ON para una base de datos principal en un escenario de replicación geográfica.

ALTER DATABASE SCOPED CONFIGURATION
SET QUERY_OPTIMIZER_HOTFIXES = ON;

F. Borrar caché de procedimientos

En el ejemplo siguiente se borra la memoria caché de procedimientos. Solo puede borrar la caché de procedimientos para una base de datos principal.

ALTER DATABASE SCOPED CONFIGURATION
CLEAR PROCEDURE_CACHE;

G. Establecer IDENTITY_CACHE

se aplica a: SQL Server 2017 (14.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

En el ejemplo siguiente se deshabilita la caché de identidades.

ALTER DATABASE SCOPED CONFIGURATION
SET IDENTITY_CACHE = OFF;

H. Establecer OPTIMIZE_FOR_AD_HOC_WORKLOADS

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

En este ejemplo se habilita el almacenamiento de código auxiliar de un plan compilado en la memoria caché cuando se compila un lote por primera vez.

ALTER DATABASE SCOPED CONFIGURATION
SET OPTIMIZE_FOR_AD_HOC_WORKLOADS = ON;

I. Establecer ELEVATE_ONLINE

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

En este ejemplo se establece ELEVATE_ONLINE en FAIL_UNSUPPORTED.

ALTER DATABASE SCOPED CONFIGURATION
SET ELEVATE_ONLINE = FAIL_UNSUPPORTED;

J. Establecer ELEVATE_RESUMABLE

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

En este ejemplo se establece ELEVATE_RESUMABLE en WHEN_SUPPORTED.

ALTER DATABASE SCOPED CONFIGURATION
SET ELEVATE_RESUMABLE = WHEN_SUPPORTED;

K. Borrado de un plan de consulta de la caché de planes

se aplica a: SQL Server 2019 (15.x) y versiones posteriores, Azure SQL Database e Instancia administrada de Azure SQL

En este ejemplo se borra un plan específico de la memoria caché de procedimientos:

ALTER DATABASE SCOPED CONFIGURATION
CLEAR PROCEDURE_CACHE 0x06000500F443610F003B7CD12C02000001000000000000000000000000000000000000000000000000000000;

L. Establecer la duración de la pausa

Se aplica a: Azure SQL Database y Azure SQL Managed Instance

En este ejemplo, la duración de la pausa del índice reanudable se establece en 60 minutos.

ALTER DATABASE SCOPED CONFIGURATION
SET PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES = 60;

M. Habilite y deshabilite la carga de resúmenes de libros de contabilidad

Se aplica a: SQL Server 2022 (16.x) y versiones posteriores.

En este ejemplo se habilita la carga de resúmenes del libro de contabilidad en una cuenta de almacenamiento de Azure.

ALTER DATABASE SCOPED CONFIGURATION
SET LEDGER_DIGEST_STORAGE_ENDPOINT = 'https://mystorage.blob.core.windows.net';

En este ejemplo se deshabilita la carga de resúmenes del libro de contabilidad.

ALTER DATABASE SCOPED CONFIGURATION
SET LEDGER_DIGEST_STORAGE_ENDPOINT = OFF;

N. Habilitar características en vista previa

Habilite la capacidad de usar características en versión preliminar.

ALTER DATABASE SCOPED CONFIGURATION
SET PREVIEW_FEATURES = ON;

SELECT *
FROM sys.database_scoped_configurations
WHERE [name] = 'PREVIEW_FEATURES';

O. Permitir que el índice vectorial pase a estar obsoleto

En el estado de versión preliminar actual de Azure SQL Database y Fabric SQL Database, los índices vectoriales hacen que las tablas sean de solo lectura. Para que la tabla se pueda escribir, habilite la siguiente configuración con ámbito de base de datos:

ALTER DATABASE SCOPED CONFIGURATION
SET ALLOW_STALE_VECTOR_INDEX = ON;

SELECT *
FROM sys.database_scoped_configurations
WHERE [name] = 'ALLOW_STALE_VECTOR_INDEX';

Cuando ALLOW_STALE_VECTOR_INDEX = ON, el índice vectorial no se actualiza al insertar o actualizar nuevos datos en la tabla. Para actualizar el índice vectorial, debes dejarlo caer y recrearlo.

Esta opción de configuración no está disponible actualmente en SQL Server 2025 (17.x).