Udostępnij za pośrednictwem


sp_dboption, tak (języka Transact-SQL)

Wyświetla lub zmienia opcje bazy danych.Nie należy używać sp_dboption do modyfikowania opcji albo wzorca bazy danych lub tempdb bazy danych.

Ważna informacjaWażne:

Ta funkcja zostanie usunięta z następnej wersji programu Microsoft SQL Server. Nie należy stosować tej funkcji w nowych projektach oraz jak najszybciej należy zmodyfikować aplikacje, w których obecnie jest używana ta funkcja.Użycie ALTER DATABASE zamiast.Aby zmodyfikować opcje bazy danych, które są skojarzone z replikacja (publikacji seryjnej, opublikowane, subskrybowane), za pomocą sp_replicationdboption.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

sp_dboption [ [ @dbname = ] 'database' ] 
    [ , [ @optname = ] 'option_name' ] 
    [ , [ @optvalue = ] 'value' ] 
[;]

Argumenty

  • [ @dbname= ] 'database'
    Jest nazwą bazy danych, w którym zestaw określonej opcji.databasejest sysname, domyślna wartość NULL.

  • [ @optname= ] 'option_name'
    Jest nazwą zestawopcji.Nie trzeba wprowadzić nazwę opcję Pełna.SQL Serverrozpoznaje część nazwy, która jest unikatowa.Zawiera spacje lub jest słowem kluczowym, należy ująć nazwę opcji znakami cudzysłowu.Jeśli ten parametr zostanie pominięty, sp_dboption zawiera listę opcji, które znajdują się na. option_name jest varchar(35), domyślna wartość NULL.

  • [ @optvalue=] 'value'
    Jest to nowe ustawienie dla option_name.Jeśli ten parametr zostanie pominięty, sp_dboptionzwraca bieżące ustawienie.valuecan be true, false, on, or off.valuejest varchar(10), domyślna wartość NULL.

Wartości kodów powrotnych

0 (sukces) lub 1 (błąd)

Zestawy wyników

W poniższej tabela przedstawiono zestaw wyników gdy są podane żadne parametry.

Nazwa kolumny

Typ danych

Opis

Opcje do ustawienia bazy danych

nvarchar(35)

Wszystkie opcje do ustawienia bazy danych.

W poniższej tabela przedstawiono zestaw wyników po database jest jedynym podany parametr.

Nazwa kolumny

Typ danych

Opis

Poniższe opcje są zestaw:

nvarchar(35)

Opcje, które są zestaw dla określonej bazy danych.

W poniższej tabela przedstawiono zestaw wyników po option_name jest dostarczany.

Nazwa kolumny

Typ danych

Opis

OptionName

nvarchar(35)

Nazwa opcji.

CurrentSetting

char(3)

Czy opcja jest włączony lub wyłączony.

Jeśli value jest podany, sp_dboption nie zwraca zestaw wyników.

Uwagi

W poniższej tabela przedstawiono opcje zestaw przez sp_dboption.Aby uzyskać więcej informacji na temat każdej opcji, zobacz Ustawianie opcji bazy danych.

Opcja

Opis

automatyczne tworzenie statystyk

Po true, wszelkie brakujące statystyk wymaganych przez kwerendę dla optymalizacji zbudowane są automatycznie podczas optymalizacji.Aby uzyskać więcej informacji, zobacz Tworzenie statystyk (Transact-SQL).

automatyczne aktualizacja statystyki

Po true, wszelkie out-z-data statystyk wymaganych przez kwerendę dla optymalizacji zbudowane są automatycznie podczas optymalizacji.Aby uzyskać więcej informacji, zobacz AKTUALIZUJ STATYSTYKĘ (Transact-SQL).

AutoClose

Gdy true, zamykanie bazy danych niedziałający bezpośrednio i jego zasoby są zwalniane po ostatnim off.

autoshrink

Gdy true, pliki bazy danych są kandydatami do automatycznego zmniejszania okresowe.

Domyślna null ANSI

Po true, CREATE TABLE następują reguły ISO, aby ustalić, czy w kolumna dozwolone wartości null .

Wartości null ANSI

Po true, oceny wszystkich porównań wartości null do nieznane.Po false, porównania wartości innych niż UNICODE ma wartość null oszacowane na wartość TRUE, jeśli są obie wartości NULL.

Ostrzeżeń ANSI

Po true, gdy warunki, takie jak "dzielenie przez zero" wydawane są błędy lub ostrzeżenia występują.

arithabort

Gdy true, błąd przepełnienia lub dzielenie przez zero powoduje, że kwerendy lub partia wypowiedzieć.Jeśli błąd występuje w transakcji, transakcja jest cofana.Gdy false, wyświetlany jest komunikat ostrzegawczy, ale kwerendy, partialub transakcja jest kontynuowany tak, jakby błąd nie wystąpił.

concat null zwraca null

Po true, jeśli argument, albo w operacji łączenie jest NULL, wynik jest NULL.

kursor blisko zatwierdzanie

Gdy true, są zamknięte jakiekolwiek kursory, które są otwarte, gdy transakcja zostanie przekazana lub wycofana.Gdy false, takie kursory pozostają otwarte, gdy transakcja zostanie zatwierdzona.Po false, wycofywanie transakcji zamyka jakiekolwiek kursory, z wyjątkiem tych zdefiniowane jako INSENSITIVE lub STATYCZNEJ.

tylko do użytku dbo

Po true, tylko właściciel bazy danych można użyć bazy danych.

ustawienie domyślne to lokalny kursor

Po true, domyślnie deklaracje kursor lokalnego.

Publikowanie korespondencji seryjnej

Gdy true, bazy danych mogą być publikowane dla replikacja scalająca.

roundabort numeryczne

Gdy true, zostanie wygenerowany błąd, gdy utrata precyzji w wyrażenie.Po false, straty dokładność nie generować komunikaty o błędach, a wynik jest zaokrąglany do precyzji kolumna lub zmiennej przechowywanie wyników.

offline

Gdy true ()on), baza danych jest w trybie offline.Gdy false ()off), baza danych jest w trybie online.

opublikowane

Gdy true, bazy danych mogą być publikowane dla replikacja.

cytowany identyfikator

Po true, podwójny cudzysłów umożliwiają należy ująć rozdzielanego identyfikatorów.

tylko do odczytu

Po true, użytkownicy mogą tylko odczytywać dane w bazie danych.Użytkownicy nie mogą modyfikować obiektów bazy danych lub danych; jednak samej bazy danych można usunąć za pomocą instrukcjaDROP DATABASE.Baza danych nie może być używany, gdy nowy value do odczytu tylko opcja zostanie określona.Wzorca bazy danych jest wyjątek i używać tylko administrator systemu wzorca w czasie, gdy jest zestawopcja tylko do odczytu.

Wyzwalacze cykliczne

Po true, umożliwia cykliczne opalanych wyzwalaczy.Gdy false, uniemożliwia tylko bezpośrednie rekursji.Aby wyłączyć rekursję pośrednich, zestaw wyzwalaczy zagnieżdżonych 0 przy użyciu opcji serwera sp_configure.

Wybierz do / Kopiuj zbiorczo można

Począwszy od Microsoft SQL Server 2000, jeśli modelu odzyskiwanie bazy danych jest aktualnie zestaw pełne, za pomocą Wybierz do / opcja Kopiuj zbiorczo można BULK_LOGGED powoduje przywrócenie modelu odzyskiwanie .Jest właściwy sposób zmienić model odzyskiwanie przy użyciu zestawu odzyskiwania klauzula o ALTER DATABASE instrukcja.

pojedynczy użytkownik

Po true, są dostępne w czas tylko jeden użytkownik bazy danych.

subskrybowane

Gdy true, bazy danych może być obejmowane publikacja.

wykrywanie poszarpane strona

Gdy true, niepełne strony mogą zostać wykryte.

TRUNC.Zaloguj się na chkpt.

Po true, punkt kontrolny obcina nieaktywny część dziennika, gdy baza danych jest w dzienniku obcięciu trybie.Jest to jedyna opcja, które można zestaw dla wzorca bazy danych.

Ważna informacjaWażne:
Począwszy od SQL Server 2000, ustawieniem trunc. Zaloguj się na chkpt. opcji do true Ustawia modelu odzyskiwanie bazy danych do PROSTEJ.Ustawienie dla opcji false Ustawia modelu odzyskiwanie pełny.

Właściciel bazy danych lub administrator systemu można zestaw lub wyłącz opcje konkretnej bazy danych dla wszystkich nowych baz danych przez wykonywanie sp_dboption na model bazy danych.

Po sp_dboption została wykonana, punkt kontrolny wykonuje w bazie danych, dla którego została zmieniona opcja.Powoduje to, że zmiany zaczynają obowiązywać natychmiast.

sp_dboption zmienia ustawienia bazy danych.Użycie sp_configure Aby zmienić ustawieniapoziom serwera - i zestaw instrukcja do zmiany ustawień, które dotyczą tylko bieżącej sesja.

Uprawnienia

Aby wyświetlić pełną listę opcji bazy danych i ich bieżące wartości wymaga członkostwa w public rolę.Aby zmienić wartość opcji bazy danych wymaga członkostwa w db_owner rola bazy danychstałej.

Przykłady

A.Ustawienie tylko do odczytu do bazy danych

Poniższy przykład powoduje, że AdventureWorks2008R2 bazy danych tylko do odczytu.

USE master;
GO
EXEC sp_dboption 'AdventureWorks2008R2', 'read only', 'TRUE';

B.Wyłączenie opcji

Poniższy przykład powoduje, że AdventureWorks2008R2 ponownie bazy danych zapisywalny.

USE master;
GO
EXEC sp_dboption 'AdventureWorks2008R2', 'read only', 'FALSE';