Udostępnij za pośrednictwem


DATABASEPROPERTYEX (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

W przypadku określonej bazy danych w programie SQL Server ta funkcja zwraca bieżące ustawienie określonej opcji lub właściwości bazy danych.

Transact-SQL konwencje składni

Składnia

DATABASEPROPERTYEX ( database , property )  

Argumenty (w programowaniu)

baza danych
Wyrażenie określające nazwę bazy danych, dla której DATABASEPROPERTYEX będą zwracane nazwane informacje o właściwości. baza danych ma typ danych nvarchar(128).

W przypadku usługi SQL Database DATABASEPROPERTYEX wymagana jest nazwa bieżącej bazy danych. Zwraca wartość NULL dla wszystkich właściwości, jeśli podano inną nazwę bazy danych.

właściwość
Wyrażenie określające nazwę właściwości bazy danych do zwrócenia. właściwość ma typ danych varchar(128) i obsługuje jedną z wartości w tej tabeli:

Uwaga / Notatka

Jeśli baza danych nie została jeszcze uruchomiona, wywołania , aby DATABASEPROPERTYEX zwrócić wartość NULL, jeśli DATABASEPROPERTYEX pobiera te wartości za pomocą bezpośredniego dostępu do bazy danych, zamiast pobierania z metadanych. Baza danych z AUTO_CLOSE ustawiona na WŁ. lub w inny sposób w trybie offline jest zdefiniowana jako "nie uruchomiona".

Majątek Opis Zwrócona wartość
Kolacjonowanie Domyślna nazwa sortowania bazy danych. Nazwa sortowania

NULL: baza danych nie została uruchomiona.

Podstawowy typ danych: nvarchar(128)
Styl porównania Styl porównania systemu Windows sortowania. Użyj następujących wartości stylu, aby utworzyć mapę bitową dla zakończonej wartości ComparisonStyle:

Ignoruj wielkość liter: 1
Ignoruj akcent: 2
Ignoruj kana: 65536
Ignoruj szerokość: 131072

Na przykład domyślną wartością 196609 jest połączenie przypadku ignoruj, ignoruj kanę i ignoruj opcje szerokości.
Zwraca styl porównania.

Zwraca wartość 0 dla wszystkich sortowania binarnego.

Podstawowy typ danych: int
Wydanie Wersja bazy danych lub warstwa usługi. Dotyczy: Azure SQL Database, Azure Synapse Analytics.



Ogólne przeznaczenie

Krytyczne dla działania firmy

Podstawowy

Standardowy

Premia

System (dla bazy danych master)

NULL: baza danych nie została uruchomiona.

Podstawowy typ danych: nvarchar(64)
IsAnsiNullDefault Baza danych jest zgodna z regułami ISO umożliwiającymi zezwalanie na wartości null. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsAnsiNullsEnabled Wszystkie porównania z wartością null mają wartość nieznaną. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsAnsiPaddingEnabled Ciągi są dopełniane tą samą długością przed porównaniem lub wstawianie. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsAnsiWarningsEnabled Program SQL Server zgłasza błędy lub komunikaty ostrzegawcze, gdy wystąpią standardowe warunki błędu. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsArithmeticAbortEnabled Zapytania kończą się, gdy podczas wykonywania zapytania występuje błąd przepełnienia lub dzielenia przez zero. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsAutoClose Baza danych jest wyłączana w sposób czysty i zwalnia zasoby po zakończeniu działania ostatniego użytkownika. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsAutoCreateStatistics Optymalizator zapytań tworzy statystyki z jedną kolumną, zgodnie z potrzebami, aby zwiększyć wydajność zapytań. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsAutoCreateStatisticsIncremental Automatycznie tworzone statystyki pojedynczej kolumny są przyrostowe, gdy jest to możliwe. Dotyczy: SQL Server 2014 (12.x) i nowszych.

1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsAutoShrink (Automatyczne zmniejszanie) Pliki bazy danych są kandydatami do automatycznego okresowego zmniejszania. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsAutoUpdateStatistics Jeśli zapytanie używa potencjalnie nieaktualnych istniejących statystyk, optymalizator zapytań aktualizuje te statystyki. 1: PRAWDA

0: FAŁSZ

NULL: nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsClone (Jestklonem) Baza danych jest kopią tylko schematu i statystyk bazy danych użytkownika utworzonej za pomocą bazy danych DBCC CLONEDATABASE. Dotyczy: SQL Server 2014 (12.x) SP2 i nowsze.

1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsCloseCursorsOnCommitEnabled Po zatwierdzeniu transakcji wszystkie otwarte kursory zostaną zamknięte. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsDatabaseSuspendedForSnapshotBackup Baza danych jest zawieszona. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsFulltextEnabled Baza danych jest włączona na potrzeby indeksowania pełnotekstowego i semantycznego. Dotyczy: SQL Server 2008 (10.0.x) i nowszych.



1: PRAWDA

0: FAŁSZ

NULL: nieprawidłowe dane wejściowe

Podstawowy typ danych: int

Nuta: Wartość tej właściwości nie ma teraz wpływu. Bazy danych użytkowników są zawsze włączone na potrzeby wyszukiwania pełnotekstowego. W przyszłej wersji programu SQL Server ta właściwość zostanie usunięta. Nie używaj tej właściwości w nowych pracach programistycznych i zmodyfikuj aplikacje, które obecnie używają tej właściwości tak szybko, jak to możliwe.
IsInStandBy Baza danych jest w trybie online jako tylko do odczytu, z dozwolonym dziennikiem przywracania. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsLocalCursorsDefault Deklaracje kursorów są domyślnie ustawione na LOCAL. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsMemoryOptimizedElevateToSnapshotEnabled Dostęp do tabel zoptymalizowanych pod kątem pamięci jest uzyskiwany przy użyciu izolacji migawki, gdy ustawienie SESJI POZIOM IZOLACJI TRANSAKCJI ma wartość ODCZYT ZATWIERDZONY, ODCZYT NIEZATWIERDZONY lub niższy poziom izolacji. Dotyczy: SQL Server 2014 (12.x) i nowszych.



1: PRAWDA

0: FAŁSZ

Podstawowy typ danych: int
IsMergePublished Program SQL Server obsługuje publikację tabeli bazy danych na potrzeby replikacji seryjnej, jeśli jest zainstalowana replikacja. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsNullConcat Operand łączenia wartości null daje wartość NULL. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsNumericRoundAbortEnabled Błędy są generowane w przypadku utraty dokładności w wyrażeniach. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsParameterizationForced Opcja ZESTAW BAZY danych PARAMETRYZACJI jest WYMUSZONA. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe
IsQuotedIdentifiersEnabled Podwójne cudzysłów dla identyfikatorów są dozwolone. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
JestOpublikowany Jeśli replikacja jest zainstalowana, program SQL Server obsługuje publikację tabeli bazy danych na potrzeby replikacji migawki lub replikacji transakcyjnej. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsRecursiveTriggersEnabled Rekursywne wyzwalacze są włączone. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
Jestsubskrybowany Baza danych jest subskrybowana do publikacji. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsSyncWithBackup Baza danych jest opublikowaną bazą danych lub bazą danych dystrybucji i obsługuje przywracanie, które nie spowoduje zakłócenia replikacji transakcyjnej. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsTornPageDetectionEnabled Aparat bazy danych programu SQL Server wykrywa niekompletne operacje we/wy spowodowane awariami zasilania lub innymi awariami systemu. 1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
JestZweryfikowanyklon Baza danych to schemat i statystyka — tylko kopia bazy danych użytkownika utworzona przy użyciu opcji WITH VERIFY_CLONEDB DBCC CLONEDATABASE. Dotyczy: począwszy od programu SQL Server 2016 (13.x) SP2.



1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: int
IsXTPSwspierany Wskazuje, czy baza danych obsługuje In-Memory OLTP. Na przykład tworzenie i używanie tabel zoptymalizowanych pod kątem pamięci oraz natywnie skompilowanych modułów.

Specyficzne dla programu SQL Server:

IsXTPSupported jest niezależny od istnienia dowolnej grupy plików MEMORY_OPTIMIZED_DATA, która jest wymagana do tworzenia In-Memory obiektów OLTP.
Dotyczy: SQL Server (SQL Server 2016 (13.x) i Azure SQL Database.

1: PRAWDA

0: FAŁSZ

NULL: Nieprawidłowe dane wejściowe, błąd lub nie dotyczy

Podstawowy typ danych: int
Czas ostatniej bazy danych LastGoodCheckDbTime Data i godzina ostatniego pomyślnego działania bazy danych DBCC CHECKDB uruchomionej w określonej bazie danych. 1 Jeśli baza danych DBCC CHECKDB nie została uruchomiona w bazie danych, zwracana jest 1900-01-01 00:00:00.000. Dotyczy: SQL Server 2016 (13.x) począwszy od wersji SP2.
SQL Server 2017 (14.x) począwszy od cu9.
SQL Server 2019 (15.x) lub nowszy.
Azure SQL Database.

Wartość daty/godziny

NULL: Nieprawidłowe dane wejściowe

Podstawowy typ danych: data/godzina
Identyfikator lokalizacji LCID Identyfikator ustawień regionalnych systemu Windows sortowania (LCID). Wartość LCID (w formacie dziesiętny).

Podstawowy typ danych: int
MaxSizeInBytes (Maksymalny rozmiarInBytes) Maksymalny rozmiar bazy danych w bajtach. Dotyczy: Azure SQL Database, Azure Synapse Analytics.

Usługi Azure SQL Database i Azure Synapse Analytics — wartość jest oparta na slo, chyba że zakupiono dodatkowy magazyn.

Rdzeń wirtualny — wartość jest wyrażona w rozmiarze 1 GB do maksymalnego rozmiaru.

NULL: baza danych nie została uruchomiona

Typ danych podstawowych: bigint
Odzyskiwanie Model odzyskiwania bazy danych PEŁNY: Pełny model odzyskiwania

BULK_LOGGED: model rejestrowany zbiorczo

PROSTE: Prosty model odzyskiwania

Podstawowy typ danych: nvarchar(128)
Cel usługi Opisuje poziom wydajności bazy danych w usłudze SQL Database lub Azure Synapse Analytics. Jedna z następujących wartości:

Null: baza danych nie została uruchomiona

Udostępnione (dla wersji Web/Business)

Podstawowy

S0

S1

S2

S3

P1

P2

Zobacz materiał P3

Elastyczna pula

System (dla bazy danych master)

Podstawowy typ danych: nvarchar(32)
Identyfikator ServiceObjectiveId Identyfikator celu usługi w usłudze SQL Database. uniqueidentifier , który identyfikuje cel usługi.
SQLSortOrder Identyfikator kolejności sortowania programu SQL Server obsługiwany we wcześniejszych wersjach programu SQL Server. 0: Baza danych używa sortowania systemu Windows

>0: Identyfikator kolejności sortowania programu SQL Server

NULL: nieprawidłowe dane wejściowe lub baza danych nie została uruchomiona

Podstawowy typ danych: tinyint
Stan Stan bazy danych. ONLINE: Baza danych jest dostępna do wykonywania zapytań.

Nuta: Funkcja może zwrócić stan ONLINE, gdy baza danych zostanie otwarta i nie została jeszcze odzyskana. Aby określić, czy baza danych online może akceptować połączenia, wykonaj zapytanie dotyczące właściwości sortowania DATABASEPROPERTYEX. Baza danych online może akceptować połączenia, gdy sortowanie bazy danych zwraca wartość inną niż null. W przypadku zawsze włączonych baz danych wykonaj zapytanie o kolumny database_state lub database_state_desc .sys.dm_hadr_database_replica_states

OFFLINE: Baza danych została jawnie przełączona w tryb offline.

PRZYWRACANIE: przywracanie bazy danych zostało uruchomione.

ODZYSKIWANIE: Odzyskiwanie bazy danych zostało uruchomione, a baza danych nie jest jeszcze gotowa do obsługi zapytań.

PODEJRZANY: Baza danych nie odzyskała.

AWARYJNE: Baza danych jest w stanie awaryjnym tylko do odczytu. Dostęp jest ograniczony do członków administratora systemu

Podstawowy typ danych: nvarchar(128)
Możliwość aktualizacji Wskazuje, czy dane można modyfikować. READ_ONLY: baza danych obsługuje odczyty danych, ale nie modyfikacje danych.

READ_WRITE: baza danych obsługuje odczyty i modyfikacje danych.

Podstawowy typ danych: nvarchar(128)
Dostęp użytkownika Wskazuje, którzy użytkownicy mogą uzyskiwać dostęp do bazy danych. SINGLE_USER: jednocześnie tylko jeden użytkownik db_owner, dbcreator lub sysadmin

RESTRICTED_USER: tylko członkowie ról db_owner, dbcreator lub sysadmin

MULTI_USER: wszyscy użytkownicy

Podstawowy typ danych: nvarchar(128)
wersja Wewnętrzny numer wersji kodu programu SQL Server, za pomocą którego utworzono bazę danych. Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana. Numer wersji: baza danych jest otwarta.

NULL: Baza danych nie została uruchomiona.

Podstawowy typ danych: int
Identyfikator repliki Identyfikator repliki połączonej bazy danych/repliki w hiperskali. Dotyczy: Azure SQL Database.

Zwraca tylko identyfikator repliki połączonej bazy danych/repliki w warstwie Hiperskala. Aby dowiedzieć się więcej o typach replik, zobacz Repliki pomocnicze w warstwie Hiperskala .

NULL: nie jest to baza danych w hiperskali lub baza danych nie została uruchomiona.

Podstawowy typ danych: nvarchar(128)

Uwaga / Notatka

1 W przypadku baz danych, które są częścią grupy dostępności, LastGoodCheckDbTime zwróci datę i godzinę ostatniego pomyślnego działania bazy danych DBCC CHECKDB uruchomionej w replice podstawowej, niezależnie od tego, z której repliki uruchamiasz polecenie.

Typy zwracane

sql_variant

Wyjątki

Zwraca wartość NULL w przypadku błędu lub jeśli obiekt wywołujący nie ma uprawnień do wyświetlania obiektu.

W programie SQL Server użytkownik może wyświetlać tylko metadane zabezpieczanych, które użytkownik jest właścicielem lub którym udzielono użytkownikowi uprawnień. Ta reguła oznacza, że wbudowane funkcje emitujące metadane, takie jak OBJECT_ID mogą zwracać wartość NULL, jeśli użytkownik nie ma uprawnień do obiektu. Aby uzyskać więcej informacji, zobacz Konfiguracja widoczności metadanych .

Uwagi

DATABASEPROPERTYEX Zwraca tylko jedno ustawienie właściwości jednocześnie. Aby wyświetlić wiele ustawień właściwości, użyj widoku katalogu sys.databases .

Przykłady

Odp. Pobieranie stanu opcji bazy danych AUTO_SHRINK

W tym przykładzie jest zwracany stan opcji bazy danych AUTO_SHRINK dla AdventureWorks bazy danych.

SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'IsAutoShrink');  

Oto zestaw wyników. Oznacza to, że AUTO_SHRINK jest wyłączona.

------------------  
0  

B. Pobieranie sortowania domyślnego dla bazy danych

Ten przykład zwraca kilka atrybutów AdventureWorks bazy danych.

SELECT   
    DATABASEPROPERTYEX('AdventureWorks2022', 'Collation') AS Collation,  
    DATABASEPROPERTYEX('AdventureWorks2022', 'Edition') AS Edition,  
    DATABASEPROPERTYEX('AdventureWorks2022', 'ServiceObjective') AS ServiceObjective,  
    DATABASEPROPERTYEX('AdventureWorks2022', 'MaxSizeInBytes') AS MaxSizeInBytes  

Oto zestaw wyników.

Collation                     Edition        ServiceObjective  MaxSizeInBytes  
----------------------------  -------------  ----------------  --------------  
SQL_Latin1_General_CP1_CI_AS  DataWarehouse  DW1000            5368709120  

C. Użyj elementu DATABASEPROPERTYEX, aby zweryfikować połączenie z repliką

W przypadku korzystania z usługi Azure SQL Database odczyt funkcji skalowania w poziomie możesz sprawdzić, czy masz połączenie z repliką tylko do odczytu, czy nie, uruchamiając następujące zapytanie w kontekście bazy danych. Zwróci READ_ONLY po nawiązaniu połączenia z repliką tylko do odczytu. W ten sposób można również określić, kiedy zapytanie jest uruchomione w repliki tylko do odczytu.

SELECT DATABASEPROPERTYEX(DB_NAME(), 'Updateability'); 

Zobacz także

ZMIEŃ BAZĘ DANYCH (Transact-SQL)
Stany bazy danych
sys.databases (Transact-SQL)
sys.database_files (Transact-SQL)
WŁAŚCIWOŚĆ SERWERA (Transact-SQL)