Estou movendo algum banco de dados finalmente para o nível de compatibilidade 150 usando o script abaixo
USE [master]
GO
ALTER DATABASE [DB1] SET COMPATIBILITY_LEVEL = 150
GO
USE [DB1]
GO
ALTER DATABASE SCOPED CONFIGURATION SET LEGACY_CARDINALITY_ESTIMATION = ON;
ALTER DATABASE SCOPED CONFIGURATION SET INTERLEAVED_EXECUTION_TVF = OFF;
ALTER DATABASE SCOPED CONFIGURATION SET DEFERRED_COMPILATION_TV = OFF;
ALTER DATABASE SCOPED CONFIGURATION SET BATCH_MODE_ON_ROWSTORE = OFF;'
Gostaria de criar uma reversão para este script, mas como posso encontrar o valor atual LEGACY_CARDINALITY_ESTIMATION
e as outras configurações?
Eu sei que usar OPTION(QUERYTRACEON 9481 /*force legacy CE*/)
ou ter um sinalizador de rastreamento 9481 forçaria esse comportamento .
A DMV sys.database_scoped_configurations expõe as definições de configuração do banco de dados atual. Esta consulta de exemplo retorna os valores atualmente configurados para configurações em sua pergunta: