Udostępnij za pośrednictwem


SET (Transact-SQL)

Uwagi dotyczące podczas korzystania z instrukcji zestaw

  • Wszystkie instrukcje zestaw są wdrożone na wykonać lub wykonywania czas, zestaw FIPS_FLAGGER, zestaw PRZESUNIĘCIA, zestaw PARSEONLY i QUOTED_IDENTIFIER zestaw.Instrukcje te są wykonywane na analizowanie czas.

  • Jeśli instrukcja zestaw jest uruchamiana w procedurze przechowywanej lub wyzwalacza, wartość opcji zestaw zostanie przywrócona po zwróceniu formantu z procedurą przechowywaną lub wyzwalacza.Ponadto jeśli instrukcja zestaw jest określona w dynamiczny ciąg SQL, jest uruchamiane przy użyciu formatu sp_executesql lub wykonać wartość opcji zestaw zostanie przywrócona po zwróceniu formantu z partia, określony w ciągu SQL dynamicznych.

  • wykonać procedur przechowywanych z zestaw ustawienia określone na wykonać czas ANSI_NULLS, zestaw i QUOTED_IDENTIFIER zestaw.procedura przechowywana, określając zestaw ANSI_NULLS lub zestaw QUOTED_IDENTIFIER użyć ustawień określonych w procedurze tworzenia czas.Jeśli używany wewnątrz procedura przechowywana, każde ustawienie zestaw jest ignorowana.

  • The user options setting of sp_configure allows for server-wide settings and works across multiple databases.Ustawienie to również zachowuje się jak jawne instrukcja zestaw, z tą różnicą, że występuje on w czasie logowania.

  • Baza danych zestaw tings zestaw przy użyciu instrukcji ALTER DATABASE są prawidłowe tylko poziom bazy danych i skuteczne tylko wtedy, gdy jawnie zestaw.Baza danych zestaw tings zastąpić wystąpienie opcji zestaw tings, które są zestaw przy użyciu sp_configure.

  • Dla jednej instrukcji zestaw w ON i OFF ustawienia, można określić wiele opcji zestaw ustawienie pakietu ON lub OFF.

    Uwaga

    To nie ma zastosowania do statystyk powiązanych opcji zestaw.

    Na przykład SET QUOTED_IDENTIFIER, ANSI_NULLS ON Ustawia QUOTED_IDENTIFIER i ANSI_NULLS ON.

  • Ustawienia instrukcja zestaw zastępują ustawienia opcji równoważne bazy danych, które są ustawiane przy użyciu instrukcja ALTER DATABASE.Na przykład wartość określona w instrukcja zestaw ANSI_NULLS zastępują ustawienia w bazie danych dla ANSI_NULLs.Ponadto niektóre połączenia zestaw tings to automatycznie zestaw ON, gdy użytkownik łączy się z bazą danych na podstawie wartości zaczęły obowiązywać, przy użyciu poprzednich Opcje użytkownika sp_configure zestaw ting lub wartości, które mają zastosowanie do wszystkich połączeń ODBC i OLE/DB.

  • Instrukcji ALTER, CREATE i DROP DATABASE nie przestrzegać ustawienie LOCK_TIMEOUT zestaw.

  • Gdy oświadczenie zestaw globalny lub skrótów, takich jak ANSI_DEFAULTS zestaw, ustawia kilka ustawień, wydawanie resetuje instrukcja zestaw skrótów poprzednie ustawienia dla wszystkich tych opcji wpływa skrótów instrukcja zestaw.zestaw poszczególnych opcji zestaw, którego dotyczy przez skrót instrukcja jest ustawiony jawnie po instrukcja zestaw skrótów, poszczególnych instrukcja zestaw zastępuje odpowiednie ustawienia skrótu.

  • W przypadku instancji kontekstu bazy danych zależy od ustanowionych przy użyciu instrukcja USE partia.Kwerendy ad hoc i wszystkie inne instrukcje wykonywane poza procedura przechowywana i są w plikach wsadowych dziedziczą ustawień opcji bazy danych oraz połączenie ustanowione przez instrukcję USE.

  • Wiele żądań Active zestaw wyników (MARS) mają stan globalny, który zawiera ostatnie ustawienia opcji zestaw sesja.Przy każdym żądaniu wykonuje opcje zestaw można go zmodyfikować.Zmiany są specyficzne dla kontekstu żądania, w którym są one zestaw i nie mają wpływu na inne równoczesne żądania MARS.Jednak po zakończeniu wykonywania żądania nowych opcji zestaw są kopiowane do stanu sesja globalne.Nowe żądania, które są wykonać w tej samej sesja pracy po tej zmiany będzie używał tych nowych zestaw ustawienia opcji.

  • Gdy procedura przechowywana jest wykonywane z partia lub z innej procedury przechowywanej, jest wykonywany w wartości opcji, które ustawiono w bazie danych, która zawiera procedury przechowywanej.Na przykład, gdy są przechowywane procedury db1.dbo.SP1 Procedura przechowywana wywołania DB2.dbo.SP2, procedury przechowywanej z dodatkiem SP1 jest wykonywane zgodnie z bieżącego ustawienia poziom zgodności z bazą danych db1i procedury przechowywanej dodatek Service Pack 2 dla jest wykonywane zgodnie z bieżącego ustawienia poziom zgodności z bazą danych Degresywna.

  • Gdy Transact-SQL instrukcja odwołuje się do obiektów znajdujących się w wielu baz danych, bieżącego kontekstu bazy danych i bieżący kontekst połączenia stosuje się do tej instrukcji. W tym przypadek gdy Transact-SQL Instrukcja jest zadanie partia, bieżący kontekst połączenia jest określone przez instrukcję USE; baza danych, jeśli Transact-SQL Instrukcja znajduje się w procedurze przechowywanej, kontekst połączenia bazy danych zawierającej procedura przechowywana.

  • Podczas tworzenie i modyfikowanie indeksów na obliczone kolumn lub indeksowania widoków, opcje zestaw ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER ANSI_NULLS, ANSI_PADDING i ANSI_WARNINGS musi być ustawiona na ON.Opcja musi być NUMERIC_ROUNDABORT zestaw na OFF.

    If any one of these options is not set to the required values, INSERT, UPDATE, DELETE, DBCC CHECKDB and DBCC CHECKTABLE actions on indexed views or tables with indexes on computed columns will fail.SQL Server will raise an error listing all the options that are incorrectly set.Ponadto SQL Server będzie przetwarzać instrukcji SELECT na te tabele lub widoki indeksowane tak, jakby indeksy lub w widokach kolumny obliczane nie istnieją.