SET Options, Microsoft Docs

Следващата таблица изброява опциите на оператора SET (по азбучен ред) и съответните опции за сървър и база данни, поддържани от Microsoft SQL Server.

Опция за база данни

Настройки по подразбиране

ANSI_NULL_DEFAULT

Стойността по подразбиране е взета отпотребителски опции

ANSI_NULLS

Стойността по подразбиране е взета отпотребителски опции

ANSI_PADDING

Стойността по подразбиране е взета отпотребителски опции

ANSI_ПРЕДУПРЕЖДЕНИЯ

Стойността по подразбиране е взета отпотребителски опции

АРИТАБОРТ

Стойността по подразбиране е взета отпотребителски опции

Стойността по подразбиране е взета отпотребителски опции

CONCAT_NULL_YIELDS_NULL

CURSOR_CLOSE ON_COMMIT

Стойността по подразбиране е взета отпотребителски опции

mdy

Стойността по подразбиране е взета отпотребителски опции

us_english

Стойността по подразбиране е взета отпотребителски опции

NUMERIC_ROUNDABORT

ограничение на разходите за регулиране на заявките

Идентификатор в кавички

Стойността по подразбиране е взета отпотребителски опции

Опции SET за време на анализ и време за изпълнение

Има два типа опции SET: време за разбор и време за изпълнение. Първите са валидни, когато се срещат в текст по време на анализиране и не са свързани с контрола на потока от инструкции. Последните са валидни по време на изпълнението на кода, в който са посочени. Ако възникне грешка преди оператора SET при изпълнение на кода, стойността на параметъра не се променя. Ако възникне грешка след оператор SET, параметърът се задава на указаната стойност.

ДА СЕОпциите за време за анализ включват QUOTED_IDENTIFIER, PARSEONLY, OFFSETS и FIPS_FLAGGER. Останалите опции за SET са в сила по време на изпълнение.

Извикването на изрази SET QUOTED_IDENTIFIER и SET ANSI_NULLS в рамките на пакет или съхранена процедура не засяга тяхната работа. Изявленията използват стойностите, зададени при създаването на пакета или съхранената процедура.

Продължителност на параметрите на оператора SET

Този раздел съдържа информация за продължителността на SET опциите.

SET опциите, зададени от потребителя в скрипт, остават в сила, докато потребителят прекрати сесията или ги нулира.

Опциите SET, зададени в съхранена процедура или тригер, са в сила, докато управлението не бъде върнато към кода, който ги е извикал, или настройката не бъде нулирана в същата процедура или тригер.

Връзките, които имат активиран MARS, поддържат списък със стойности по подразбиране за SET параметри. Ако пакетът се изпълнява при тези условия, стойностите по подразбиране за опциите SET се копират в средата на заявката. След като пакетът завърши, средата възстановява настройките на сесията. В този случай множество пакети, които се изпълняват едновременно при едни и същи условия, се изпълняват в изолирана среда за SET опции.

Забележка

Когато използвате връзки, които имат активиран MARS, ако множество пакети се опитат да променят настройките на средата едновременно, тогава стойностите по подразбиране ще зависят от последния завършен пакет.

Ако опциите SET не са изрично нулирани, всички стойности, зададени в обхващащия код, се разпространяват към вложени съхранени процедури или тригери.

SET параметри, зададени от потребителя вв динамичен SQL пакет, са валидни само по време на неговото изпълнение.

Ако опциите SET, зададени на ниво връзка, не са изрично или неявно нулирани, те се прилагат при свързване към различна база данни.

Забележка

Понякога, когато се свързвате с база данни, някои опции може да бъдат автоматично активирани в зависимост от стойностите, зададени, когато преди сте използвалипотребителски опции, опция за сървър или стойности, които се прилагат за всички ODBC и OLE DB връзки.

SET параметър за бърза настройка

Изявлението Transact-SQL SET ANSI_DEFAULTS ви позволява да зададете едновременно следните ISO опции:

7. ЗАДАДЕТЕ ANSI_NULLS

2. ЗАДАДЕТЕ ANSI_NULL_DFLT_ON

3. ЗАДАДЕТЕ IMPLICIT_TRANSACTIONS

5.SET ANSI_PADDING

1. ЗАДАДЕТЕ QUOTED_IDENTIFIER

6.ЗАДАДЕТЕ ANSI_WARNINGS

Този параметър нулира стойностите на изброените параметри. Задаването на отделни параметри ще замени стойността, зададена чрез бърза настройка.

Забележка

Операторът SET ANSI_DEFAULTS не задава всички ISO-съвместими опции.