Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Database w Microsoft Fabric
W przypadku określonej bazy danych w programie SQL Server DATABASEPROPERTYEX funkcja zwraca bieżące ustawienie określonej opcji bazy danych lub właściwości.
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 zwraca 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 NULL on wszystkie 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 w celu DATABASEPROPERTYEX zwrócenia NULL , jeśli DATABASEPROPERTYEX pobiera te wartości za pomocą bezpośredniego dostępu do bazy danych, zamiast pobierania z metadanych. Baza danych z ustawioną AUTO_CLOSE wartością ONlub w inny sposób w trybie offline jest zdefiniowana jako "nie uruchomiona".
| Majątek | Opis | Zwrócona wartość |
|---|---|---|
CollationTyp danych: nvarchar(128) |
Domyślna nazwa sortowania bazy danych. | Nazwa sortowania. Jeśli NULLbaza danych nie jest uruchomiona. |
ComparisonStyleTyp danych: int |
Styl porównania systemu Windows sortowania. Użyj następujących wartości stylu, aby utworzyć mapę bitową dla gotowej ComparisonStyle wartości:- 1: Ignoruj wielkość liter- 2: Ignoruj akcent- 65536: Ignoruj kana- 131072: Ignoruj szerokośćNa przykład wartość domyślna 196609 to wynik połączenia przypadku ignoruj, ignoruj kana i ignoruj opcje szerokości . |
Zwraca styl porównania. Zwraca 0 wszystkie sortowania binarne. |
EditionTyp danych: nvarchar(64) |
Wersja bazy danych lub warstwa usługi. | - General Purpose- Business Critical- Basic- Standard- Premium- System (dla master bazy danych)- FabricSQLDB: baza danych SQL w Microsoft Fabric- NULL: Baza danych nie została uruchomiona.Dotyczy to: Azure SQL Database, SQL database in Microsoft Fabric, Azure Synapse Analytics. |
IsAnsiNullDefaultTyp danych: int |
Baza danych jest zgodna z regułami ISO umożliwiającymi zezwalanie NULL na wartości. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsAnsiNullsEnabledTyp danych: int |
Wszystkie porównania z wynikiem nieznanym NULL . |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsAnsiPaddingEnabledTyp danych: int |
Ciągi są dopełniane tą samą długością przed porównaniem lub wstawianie. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsAnsiWarningsEnabledTyp danych: int |
Program SQL Server zgłasza błędy lub komunikaty ostrzegawcze, gdy wystąpią standardowe warunki błędu. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsArithmeticAbortEnabledTyp danych: int |
Zapytania kończą się, gdy podczas wykonywania zapytania występuje błąd przepełnienia lub dzielenia przez zero. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsAutoCloseTyp danych: int |
Baza danych jest wyłączana w sposób czysty i zwalnia zasoby po zakończeniu działania ostatniego użytkownika. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsAutoCreateStatisticsTyp danych: int |
Optymalizator zapytań tworzy statystyki z jedną kolumną, zgodnie z potrzebami, aby zwiększyć wydajność zapytań. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsAutoCreateStatisticsIncrementalTyp danych: int |
Automatycznie tworzone statystyki pojedynczej kolumny są przyrostowe, gdy jest to możliwe. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejścioweDotyczy: SQL Server 2014 (12.x) i nowsze wersje. |
IsAutoShrinkTyp danych: int |
Pliki bazy danych są kandydatami do automatycznego okresowego zmniejszania. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsAutoUpdateStatisticsTyp danych: int |
Jeśli zapytanie używa potencjalnie nieaktualnych istniejących statystyk, optymalizator zapytań aktualizuje te statystyki. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsCloneTyp danych: int |
Baza danych jest kopią tylko schematu i statystyk bazy danych użytkownika utworzonej za pomocą DBCC CLONEDATABASEpolecenia . |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejścioweDotyczy: SQL Server 2014 (12.x) SP2 i nowsze wersje. |
IsCloseCursorsOnCommitEnabledTyp danych: int |
Po zatwierdzeniu transakcji wszystkie otwarte kursory są zamykane. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsDatabaseSuspendedForSnapshotBackupTyp danych: int |
Baza danych jest zawieszona. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsFulltextEnabledTyp danych: int |
Baza danych jest włączona na potrzeby indeksowania pełnotekstowego i semantycznego. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejścioweDotyczy: SQL Server 2008 (10.0.x) i nowsze wersje. 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 modyfikuj aplikacje, które obecnie używają tej właściwości tak szybko, jak to możliwe. |
IsInStandByTyp danych: int |
Baza danych jest w trybie online jako tylko do odczytu, z dozwolonym dziennikiem przywracania. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsLocalCursorsDefaultTyp danych: int |
Deklaracje kursorów są domyślnie ustawione na LOCAL. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsMemoryOptimizedElevateToSnapshotEnabledTyp danych: int |
Dostęp do tabel zoptymalizowanych pod kątem pamięci jest uzyskiwany przy użyciu SNAPSHOT izolacji, gdy ustawienie TRANSACTION ISOLATION LEVEL sesji jest ustawione na READ COMMITTED, READ UNCOMMITTEDlub niższy poziom izolacji. |
-
1:Prawdziwy- 0:FałszywyDotyczy: SQL Server 2014 (12.x) i nowsze wersje. |
IsMergePublishedTyp danych: int |
Program SQL Server obsługuje publikację tabeli bazy danych na potrzeby replikacji seryjnej, jeśli jest zainstalowana replikacja. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsNullConcatTyp danych: int |
Operand łączenia wartości null daje wartość NULL. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsNumericRoundAbortEnabledTyp danych: int |
Błędy są generowane w przypadku utraty dokładności w wyrażeniach. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsOptimizedLockingOnTyp danych: int |
Zoptymalizowane blokowanie jest włączone dla bazy danych. |
-
1:Prawdziwy- 0:Fałszywy- NULL: NiedostępneDotyczy do: SQL Server 2025 (17.x) i nowszych wersji, Azure SQL Database, Azure SQL ManagedInstance AUTD oraz bazy danych SQL w Microsoft Fabric. |
IsParameterizationForcedTyp danych: int |
PARAMETERIZATION opcja bazy danych SET to FORCED. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsQuotedIdentifiersEnabledTyp danych: int |
Podwójne cudzysłów dla identyfikatorów są dozwolone. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsPublishedTyp danych: int |
Jeśli replikacja jest zainstalowana, program SQL Server obsługuje publikację tabeli bazy danych na potrzeby replikacji migawki lub replikacji transakcyjnej. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsRecursiveTriggersEnabledTyp danych: int |
Rekursywne wyzwalacze są włączone. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsSubscribedTyp danych: int |
Baza danych jest subskrybowana do publikacji. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsSyncWithBackupTyp danych: int |
Baza danych jest opublikowaną bazą danych lub bazą danych dystrybucji i obsługuje przywracanie, które nie zakłóca replikacji transakcyjnej. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsTornPageDetectionEnabledTyp danych: int |
Aparat bazy danych programu SQL Server wykrywa niekompletne operacje we/wy spowodowane awariami zasilania lub innymi awariami systemu. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe |
IsVerifiedCloneTyp danych: int |
Baza danych jest schematem i statystyką — tylko kopia bazy danych użytkownika utworzona WITH VERIFY_CLONEDB przy użyciu opcji DBCC CLONEDATABASE. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejścioweDotyczy: SQL Server 2016 (13.x) SP2 i nowsze wersje. |
IsXTPSupportedTyp danych: int |
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 MEMORY_OPTIMIZED_DATA grupy plików, która jest wymagana do tworzenia In-Memory obiektów OLTP. |
-
1:Prawdziwy- 0:Fałszywy- NULL: Nieprawidłowe dane wejściowe, błąd lub nie dotyczyDotyczy: SQL Server 2016 (13.x) i nowsze wersje oraz Azure SQL Database. |
LastGoodCheckDbTimeTyp danych: data/godzina |
Data i godzina ostatniego pomyślnego uruchomienia DBCC CHECKDB w określonej bazie danych. Jeśli DBCC CHECKDB nie uruchomiono bazy danych, 1900-01-01 00:00:00.000 zwracana jest wartość . W przypadku baz danych, które są częścią grupy dostępności, LastGoodCheckDbTime zwraca datę i godzinę ostatniego pomyślnego uruchomienia DBCC CHECKDB repliki podstawowej, niezależnie od tego, z której repliki uruchamiasz polecenie. |
NULL: Nieprawidłowe dane wejścioweDotyczy do: SQL Server 2016 (13.x) SP2, SQL Server 2017 (14.x) CU9, SQL Server 2019 (15.x) i nowszych wersji, Azure SQL Database oraz bazy danych SQL w Microsoft Fabric. |
LCIDTyp danych: int |
Identyfikator ustawień regionalnych systemu Windows sortowania (LCID). | Wartość LCID (w formacie dziesiętny). |
MaxSizeInBytesTyp danych: bigint |
Maksymalny rozmiar bazy danych w bajtach. |
-
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 uruchomionaDotyczy to: Azure SQL Database, SQL database w Microsoft Fabric oraz Azure Synapse Analytics. |
RecoveryTyp danych: nvarchar(128) |
Model odzyskiwania bazy danych. |
-
FULL: Model pełnego odzyskiwania- BULK_LOGGED: Model rejestrowany zbiorczo- SIMPLE: Prosty model odzyskiwania |
ServiceObjectiveTyp danych: nvarchar(32) |
Opisuje poziom wydajności bazy danych w SQL Database, SQL w Microsoft Fabric lub Azure Synapse Analytics. | Jedna z następujących wartości: - NULL: baza danych nie została uruchomiona- Shared (dla wersji Web/Business)- Basic- S0- S1- S2- S3- P1- P2- P3- ElasticPool- System (dla master bazy danych)- FabricSQLDB: baza danych SQL w Microsoft Fabric |
ServiceObjectiveIdTyp danych: uniqueidentifier |
Identyfikator celu usługi w usłudze SQL Database. | Identyfikator celu usługi. |
SQLSortOrderTyp danych: tinyint |
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 |
StatusTyp danych: nvarchar(128) |
Stan bazy danych. |
ONLINE: Baza danych jest dostępna dla zapytań.Nuta: Funkcja może zwrócić stan ONLINE , gdy baza danych zostanie otwarta i nie została jeszcze odzyskana. Aby określić, czy ONLINE baza danych może akceptować połączenia, wykonaj zapytanie dotyczące Collation właściwości DATABASEPROPERTYEX. Baza ONLINE danych może akceptować połączenia, gdy sortowanie bazy danych zwraca wartość inną niż null. W przypadku zawsze włączonych baz danych wykonaj zapytanie dotyczące database_state kolumn lub database_state_desc .sys.dm_hadr_database_replica_states- OFFLINE: Baza danych została jawnie przełączona w tryb offline.- RESTORING: rozpoczęto przywracanie bazy danych.- RECOVERING: Odzyskiwanie bazy danych zostało uruchomione, a baza danych nie jest jeszcze gotowa do obsługi zapytań.- SUSPECT: Baza danych nie odzyskała.- EMERGENCY: Baza danych jest w stanie awaryjnym tylko do odczytu. Dostęp jest ograniczony do członków administratora systemu |
UpdateabilityTyp danych: nvarchar(128) |
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. |
UserAccessTyp danych: nvarchar(128) |
Wskazuje, którzy użytkownicy mogą uzyskiwać dostęp do bazy danych. |
SINGLE_USER: tylko jeden użytkownik db_owner, dbcreator lub sysadmin jednocześnie- RESTRICTED_USER: Tylko członkowie ról db_owner, dbcreator lub sysadmin- MULTI_USER: Wszyscy użytkownicy |
VersionTyp danych: int |
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. |
ReplicaIDTyp danych: nvarchar(128) |
Identyfikator repliki połączonej bazy danych/repliki w hiperskali. | Zwraca tylko identyfikator repliki połączonej bazy danych/repliki w warstwie Hiperskala. Aby dowiedzieć się więcej na temat typów replik, zobacz Repliki pomocnicze w warstwie Hiperskala. - NULL: Nie jest to baza danych w warstwie Hiperskala lub baza danych nie jest uruchomiona.Dotyczy: Hiperskala usługi Azure SQL Database. |
Typy zwracane
sql_variant
Wyjątki
Zwraca błąd NULL 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ć 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
Przykłady kodu w tym artykule korzystają z przykładowej bazy danych AdventureWorks2025 lub AdventureWorksDW2025, którą można pobrać ze strony głównej Przykładów programu Microsoft SQL Server i projektów społeczności.
Odp. Pobieranie stanu opcji bazy danych AUTO_SHRINK
Ten przykład zwraca stan AUTO_SHRINK opcji bazy danych dla AdventureWorks bazy danych.
SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'IsAutoShrink');
Oto zestaw wyników. Oznacza to, że AUTO_SHRINK jest wyłączone.
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ą
Korzystając z funkcji skalowania w poziomie usługi Azure SQL Database, 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. Jest zwracany 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');