SET ANSI_DEFAULTS (Transact-SQL)

Van toepassing op:SQL ServerAzureSQL Managed InstanceAzureSynapse AnalyticsAnalyticsPlatform System (PDW)SQL analytics endpoint in Microsoft FabricWarehousein Microsoft Fabric

Beheert een groep SQL Server-instellingen die gezamenlijk bepaald ISO-standaardgedrag specificeren.

Transact-SQL syntaxis-conventies

Syntaxis

Syntax for SQL Server, serverless SQL pool in Azure Synapse Analytics, Microsoft Fabric

SET ANSI_DEFAULTS { ON | OFF }

Syntaxis voor Azure Synapse Analytics en Analytics Platform System (PDW)

SET ANSI_DEFAULTS ON

Opmerkingen

ANSI_DEFAULTS is een server-side instelling die het gedrag voor alle clientverbindingen kan activeren. De client vraagt meestal om de instelling bij het initialiseren van verbinding of sessies. Gebruikers mogen de serverinstelling niet wijzigen.
Om het gedrag van de client te veranderen, moeten gebruikers clientspecifieke methoden gebruiken zoals SQL_COPT_SS_PRESERVE_CURSORS. Voor meer informatie, zie SQLSetConnectAttr.

Wanneer ingeschakeld (AAN), schakelt deze optie de volgende ISO-instellingen in:

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

 

Samen definiëren deze ISO-standaardopties SET de queryverwerkingsomgeving gedurende de werksessie van de gebruiker, een lopende trigger of een opgeslagen procedure. SET Deze opties omvatten echter niet alle opties die nodig zijn om aan de ISO-norm te voldoen.

Bij het werken met indexen op berekende kolommen, gefilterde indexen en geïndexeerde weergaven, moeten vier van deze standaardwaarden (ANSI_NULLS, ANSI_PADDING, ANSI_WARNINGS, en QUOTED_IDENTIFIER) op ON worden gezet. Deze standaardinstellingen behoren tot zeven SET opties die de vereiste waarden moeten krijgen toegekend wanneer u indexen aanmaakt en verandert op berekende kolommen, gefilterde indexen en geïndexeerde weergaven. De andere SET opties zijn ARITHABORT (AAN), CONCAT_NULL_YIELDS_NULL (AAN) en NUMERIC_ROUNDABORT (UIT). Voor meer informatie over de vereiste SET opties met geïndexeerde weergaven, gefilterde indexen en indexen op berekende kolommen, zie Overwegingen bij het gebruik van de SET Statements.

Het ODBC-stuurprogramma van sql Server Native Client en de OLE DB-provider van SQL Server voor SQL Server worden automatisch ingesteld ANSI_DEFAULTS op AAN wanneer er verbinding wordt gemaakt. De chauffeur en de zorgverlener zetten CURSOR_CLOSE_ON_COMMIT dan en IMPLICIT_TRANSACTIONS zetten het uit. De UIT-instellingen voor CURSOR_CLOSE_ON_COMMIT en IMPLICIT_TRANSACTIONS kunnen worden geconfigureerd in ODBC-databronnen, in ODBC-verbindingsattributen, of in OLE DB-verbindingseigenschappen die in de applicatie worden ingesteld voordat men verbinding maakt met SQL Server. De standaard voor ANSI_DEFAULTS is UIT voor verbindingen van DB-Library applicaties.

Wanneer SETSET ANSI_DEFAULTS wordt uitgegeven, QUOTED_IDENTIFIER wordt ingesteld tijdens de parsetijd, en de volgende opties worden ingesteld tijdens uitvoertijd:

SET ANSI_NULLS

SET ANSI_WARNINGS

SET ANSI_NULL_DFLT_ON

SET CURSOR_CLOSE_ON_COMMIT

SET ANSI_PADDING

SET IMPLICIT_TRANSACTIONS

Permissions

Vereist lidmaatschap van de openbare rol.

Examples

Het volgende voorbeeld zet ANSI_DEFAULTS op ON en gebruikt de DBCC USEROPTIONS instructie om de beïnvloede instellingen weer te geven.

-- 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  

Zie ook

DBCC GEBRUIKERSOPTIES (Transact-SQL)
SET Instructies (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)