SET ANSI_DEFAULTS (Transact-SQL)

Aplica-se a:SQL ServerInstância Gerenciada de SQL do Azure Azure PDW (Sistema de Plataforma de Análise)do Azure Synapse Analytics Ponto de extremidade de análise de SQL no Microsoft FabricWarehouse no Microsoft Fabric

Controla um grupo de configurações do SqL Server que coletivamente especificam algum comportamento padrão ISO.

Convenções de sintaxe de Transact-SQL

Sintaxe

Sintaxe para SQL Server, Pool de SQL sem servidor no Azure Synapse Analytics, Microsoft Fabric

SET ANSI_DEFAULTS { ON | OFF }

Sintaxe para Azure Synapse Analytics e PDW (Analytics Platform System)

SET ANSI_DEFAULTS ON

Comentários

ANSI_DEFAULTS é uma configuração do lado do servidor que pode ativar o comportamento para todas as conexões do cliente. Normalmente, o cliente solicita a configuração no momento da inicialização da sessão ou da conexão. Os usuários não devem modificar a configuração de servidor.
Para alterar o comportamento do cliente, os usuários devem usar métodos específicos do cliente, como SQL_COPT_SS_PRESERVE_CURSORS. Para obter mais informações, veja SQLSetConnectAttr.

Quando ativada (ON), esta opção habilita as seguintes configurações ISO:

SET ANSI_NULLS

SET CURSOR_CLOSE_ON_COMMIT

SET ANSI_NULL_DFLT_ON

SET IMPLICIT_TRANSACTIONS

SET ANSI_PADDING

SET QUOTED_IDENTIFIER

SET ANSI_WARNINGS

 

Juntas, essas opções padrão SET ISO definem o ambiente de processamento de consultas para a duração da sessão de trabalho do usuário, um gatilho em execução ou um procedimento armazenado. No entanto, essas SET opções não incluem todas as opções necessárias para cumprir a norma ISO.

Ao lidar com índices em colunas computadas, índices filtrados e exibições indexadas, quatro desses padrões (ANSI_NULLS, ANSI_PADDING, ANSI_WARNINGS, e QUOTED_IDENTIFIER) devem ser definidos como ON. Esses padrões estão entre sete SET opções que devem ser atribuídas aos valores necessários quando você cria e altera índices em colunas computadas, índices filtrados e visualizações indexadas. As outras SET opções são ARITHABORT (LIGADO), CONCAT_NULL_YIELDS_NULL (LIGADO) e NUMERIC_ROUNDABORT (DESLIGADO). Para mais informações sobre as configurações de opções exigidas SET com visualizações indexadas, índices filtrados e índices em colunas computadas, veja Considerações ao Usar as SET Sentenças.

O driver ODBC do SQL Server Native Client e o Provedor OLE DB do SQL Server Native Client para SQL Server são definidos ANSI_DEFAULTS automaticamente como ON ao se conectar. O motorista e o Provedor então configuram CURSOR_CLOSE_ON_COMMIT e IMPLICIT_TRANSACTIONS para DESLIGADO. As configurações OFF para CURSOR_CLOSE_ON_COMMIT e IMPLICIT_TRANSACTIONS podem ser definidas nas fontes de dados ODBC, nos atributos de conexão ODBC ou nas propriedades de conexão do OLE DB definidos no aplicativo antes da conexão com o SQL Server. O padrão para ANSI_DEFAULTS é OFF para conexões de aplicativos DB-Library.

Quando SETSET ANSI_DEFAULTS é emitido, QUOTED_IDENTIFIER é definido em tempo de análise sintética, e as seguintes opções são definidas em tempo de execução:

SET ANSI_NULLS

SET ANSI_WARNINGS

SET ANSI_NULL_DFLT_ON

SET CURSOR_CLOSE_ON_COMMIT

SET ANSI_PADDING

SET IMPLICIT_TRANSACTIONS

Permissões

Requer associação à função pública .

Exemplos

O exemplo a seguir define ANSI_DEFAULTS como LIGADO e usa a DBCC USEROPTIONS instrução para exibir as configurações afetadas.

-- SET ANSI_DEFAULTS ON.  
SET ANSI_DEFAULTS ON;  
GO  

-- Display the current settings.  
DBCC USEROPTIONS;  
GO 

-- SET ANSI_DEFAULTS OFF.  
SET ANSI_DEFAULTS OFF;  
GO  

Consulte Também

OPÇÕES DE USUÁRIO DO DCC (Transact-SQL)
SET Instruções (Transact-SQL)
SET ANSI_NULL_DFLT_ON (Transact-SQL)
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)
SET CURSOR_CLOSE_ON_COMMIT (Transact-SQL)
SET IMPLICIT_TRANSACTIONS (Transact-SQL)
SET QUOTED_IDENTIFIER (Transact-SQL)