Dela via


DATABASEPROPERTYEX (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalysplattformssystem (PDW)SQL-databas i Förhandsversion av Microsoft Fabric

För en angiven databas i SQL Server DATABASEPROPERTYEX returnerar funktionen den aktuella inställningen för det angivna databasalternativet eller -egenskapen.

Transact-SQL syntaxkonventioner

Syntax

DATABASEPROPERTYEX ( database , property )

Argumentpunkter

databas

Ett uttryck som anger namnet på databasen som DATABASEPROPERTYEX returnerar den namngivna egenskapsinformationen. databasen har datatypen nvarchar(128).

För SQL Database DATABASEPROPERTYEX kräver namnet på den aktuella databasen. Den returnerar NULL för alla egenskaper om den får ett annat databasnamn.

egenskap

Ett uttryck som anger namnet på den databasegenskap som ska returneras. egenskapen har datatypen varchar(128) och stöder ett av värdena i den här tabellen:

Anmärkning

Om databasen ännu inte har startat anropas för att DATABASEPROPERTYEX returnera NULL om DATABASEPROPERTYEX hämtar dessa värden genom direkt databasåtkomst, i stället för att hämta från metadata. En databas med AUTO_CLOSE värdet ON, eller på annat sätt offline, definieras som "inte startad".

Fastighet Beskrivning Returnerat värde
Collation

Datatyp: nvarchar(128)
Standardsorteringsnamn för databasen. Sorteringsnamn. Om NULLstartas inte databasen.
ComparisonStyle

Datatyp: int
Sorteringsformatet för Windows-jämförelsen. Använd följande formatvärden för att skapa en bitmapp för det färdiga ComparisonStyle värdet:

- 1: Ignorera ärende
- 2: Ignorera dekorfärg
- 65536: Ignorera kana
- 131072: Ignorera bredd

Standardvärdet 196609 för är till exempel resultatet av att kombinera ignorera-fallet, ignorera kana och ignorera breddalternativ .
Returnerar jämförelseformatet.

Returnerar 0 för alla binära sorteringar.
Edition

Datatyp: nvarchar(64)
Databasutgåvan eller tjänstnivån. - General Purpose
- Business Critical
- Basic
- Standard
- Premium
- System (för master databas)
- FabricSQLDB: SQL-databas i Förhandsversion av Microsoft Fabric
- NULL: Databasen har inte startats.

Gäller för: Azure SQL Database, SQL Database i Microsoft Fabric Preview, Azure Synapse Analytics.
IsAnsiNullDefault

Datatyp: int
Databasen följer ISO-regler för att tillåta NULL värden. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsAnsiNullsEnabled

Datatyp: int
Alla jämförelser med en NULL utvärdera till okänd. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsAnsiPaddingEnabled

Datatyp: int
Strängar är vadderade till samma längd före jämförelse eller infoga. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsAnsiWarningsEnabled

Datatyp: int
SQL Server-problem med fel eller varningsmeddelanden när standardfeltillstånd inträffar. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsArithmeticAbortEnabled

Datatyp: int
Frågor slutar när ett spill eller divide-by-zero-fel inträffar under frågekörningen. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsAutoClose

Datatyp: int
Databasen stängs av och frigör resurser när den senaste användaren har avslutats. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsAutoCreateStatistics

Datatyp: int
Frågeoptimeraren skapar statistik med en kolumn, efter behov, för att förbättra frågeprestandan. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsAutoCreateStatisticsIncremental

Datatyp: int
Statistik för en enskild kolumn som skapas automatiskt är inkrementell när det är möjligt. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata

gäller för: SQL Server 2014 (12.x) och senare versioner.
IsAutoShrink

Datatyp: int
Databasfiler är kandidater för automatisk regelbunden krympning. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsAutoUpdateStatistics

Datatyp: int
När en fråga använder potentiellt inaktuell befintlig statistik uppdaterar frågeoptimeraren den statistiken. - 1:Sann
- 0:Falsk
- NULL: Indata är ogiltiga
IsClone

Datatyp: int
Databasen är en schema- och statistikkopia av en användardatabas som skapats med DBCC CLONEDATABASE. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata

Gäller för: SQL Server 2014 (12.x) SP2 och senare versioner.
IsCloseCursorsOnCommitEnabled

Datatyp: int
När en transaktion checkas in stängs alla öppna markörer. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsDatabaseSuspendedForSnapshotBackup

Datatyp: int
Databasen är pausad. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsFulltextEnabled

Datatyp: int
Databasen är aktiverad för fulltext- och semantisk indexering. - 1:Sann
- 0:Falsk
- NULL: Indata är ogiltiga

gäller för: SQL Server 2008 (10.0.x) och senare versioner.

Not: Värdet för den här egenskapen har nu ingen effekt. Användardatabaser är alltid aktiverade för fulltextsökning. En framtida version av SQL Server tar bort den här egenskapen. Använd inte den här egenskapen i nytt utvecklingsarbete och ändra program som för närvarande använder den här egenskapen så snart som möjligt.
IsInStandBy

Datatyp: int
Databasen är online som skrivskyddad och återställningsloggen tillåts. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsLocalCursorsDefault

Datatyp: int
Markördeklarationer är som standard LOCAL. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsMemoryOptimizedElevateToSnapshotEnabled

Datatyp: int
Minnesoptimerade tabeller används med isolering SNAPSHOT , när sessionsinställningen TRANSACTION ISOLATION LEVEL är inställd på READ COMMITTED, READ UNCOMMITTEDeller en lägre isoleringsnivå. - 1:Sann
- 0:Falsk

gäller för: SQL Server 2014 (12.x) och senare versioner.
IsMergePublished

Datatyp: int
SQL Server stöder databastabellpublicering för sammanslagningsreplikering, om replikeringen är installerad. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsNullConcat

Datatyp: int
Operand med nullsammanfogning ger NULL. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsNumericRoundAbortEnabled

Datatyp: int
Fel genereras när en förlust av precision inträffar i uttryck. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsOptimizedLockingOn

Datatyp: int
Optimerad låsning är aktiverad för databasen. - 1:Sann
- 0:Falsk
- NULL: Inte tillgängligt

Gäller för: FÖRHANDSVERSION av SQL Server 2025 (17.x) och senare versioner, Azure SQL Database, Azure SQL Managed InstanceAUTD och SQL-databas i Förhandsversion av Microsoft Fabric.
IsParameterizationForced

Datatyp: int
PARAMETERIZATION databasalternativet SET är FORCED. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsQuotedIdentifiersEnabled

Datatyp: int
Dubbla citattecken för identifierare tillåts. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsPublished

Datatyp: int
Om replikeringen är installerad har SQL Server stöd för databastabellpublicering för ögonblicksbild eller transaktionsreplikering. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsRecursiveTriggersEnabled

Datatyp: int
Rekursiv utskjutning av utlösare är aktiverad. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsSubscribed

Datatyp: int
Databasen prenumererar på en publikation. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsSyncWithBackup

Datatyp: int
Databasen är antingen en publicerad databas eller en distributionsdatabas och stöder en återställning som inte stör transaktionsreplikeringen. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsTornPageDetectionEnabled

Datatyp: int
SQL Server Database Engine identifierar ofullständiga I/O-åtgärder som orsakas av strömavbrott eller andra systemavbrott. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata
IsVerifiedClone

Datatyp: int
Databasen är en schema- och statistikkopia av en användardatabas som skapats med WITH VERIFY_CLONEDB alternativet DBCC CLONEDATABASE. - 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata

Gäller för: SQL Server 2016 (13.x) SP2 och senare versioner.
IsXTPSupported

Datatyp: int
Anger om databasen stöder In-Memory OLTP. Till exempel skapande och användning av minnesoptimerade tabeller och inbyggda kompilerade moduler.

Specifikt för SQL Server:

IsXTPSupported är oberoende av om det finns någon MEMORY_OPTIMIZED_DATA filgrupp, vilket krävs för att skapa In-Memory OLTP-objekt.
- 1:Sann
- 0:Falsk
- NULL: Ogiltiga indata, ett fel eller inte tillämpligt

Gäller för: SQL Server 2016 (13.x) och senare versioner och Azure SQL Database.
LastGoodCheckDbTime

Datatyp: datetime
Datum och tid för den senaste lyckade DBCC CHECKDB som kördes på den angivna databasen. Om DBCC CHECKDB inte har körts på en databas 1900-01-01 00:00:00.000 returneras. För databaser som ingår i en tillgänglighetsgrupp LastGoodCheckDbTime returnerar datum och tid för den senaste lyckade DBCC CHECKDB som kördes på den primära repliken, oavsett vilken replik du kör kommandot från. NULL: Ogiltiga indata

Gäller för: SQL Server 2016 (13.x) SP2, SQL Server 2017 (14.x) CU9, SQL Server 2019 (15.x) och senare versioner, Azure SQL Database och SQL Database i Microsoft Fabric Preview.
LCID

Datatyp: int
Språkidentifieraren för sortering i Windows (LCID). LCID-värde (i decimalformat).
MaxSizeInBytes

Datatyp: bigint
Maximal databasstorlek i byte. - Azure SQL Database och Azure Synapse Analytics: Värdet baseras på SLO om inte extra lagring har köpts.

- vCore: Värdet är i 1 GB ökar upp till maxstorleken.

- NULL: Databasen har inte startats

Gäller för: Azure SQL Database, SQL Database i Microsoft Fabric Preview och Azure Synapse Analytics.
Recovery

Datatyp: nvarchar(128)
Databasåterställningsmodell. - FULL: Fullständig återställningsmodell
- BULK_LOGGED: Massloggad modell
- SIMPLE: Enkel återställningsmodell
ServiceObjective

Datatyp: nvarchar(32)
Beskriver prestandanivån för databasen i SQL Database, SQL Database i Microsoft Fabric Preview eller Azure Synapse Analytics. Något av följande värden:

- NULL: databasen har inte startats
- Shared (för webb-/företagsversioner)
- Basic
- S0
- S1
- S2
- S3
- P1
- P2
- P3
- ElasticPool
- System (för master databas)
- FabricSQLDB: SQL-databas i Förhandsversion av Microsoft Fabric
ServiceObjectiveId

Datatyp: uniqueidentifier
ID för tjänstmålet i SQL Database. ID för tjänstmålet.
SQLSortOrder

Datatyp: tinyint
SQL Server-sorteringsordnings-ID stöds i tidigare versioner av SQL Server. - 0: Databasen använder Windows-sortering

- >0: SQL Server-sorteringsordnings-ID

- NULL: Ogiltiga indata eller så har databasen inte startats
Status

Datatyp: nvarchar(128)
Databasstatus. ONLINE: Databasen är tillgänglig för frågor.

Not: Funktionen kan returnera statusen ONLINE medan databasen öppnas och ännu inte har återställts. Om du vill ta reda på om en ONLINE databas kan acceptera anslutningar frågar du Collation egenskapen DATABASEPROPERTYEXför . Databasen ONLINE kan acceptera anslutningar när databassortering returnerar ett värde som inte är null. För AlwaysOn-databaser frågar du efter kolumnerna database_state eller database_state_desc i sys.dm_hadr_database_replica_states.

- OFFLINE: Databasen togs uttryckligen offline.

- RESTORING: Databasåterställningen har startats.

- RECOVERING: Databasåterställningen har startats och databasen är ännu inte redo för frågor.

- SUSPECT: Databasen har inte återställts.

- EMERGENCY: Databasen är i ett nödläge, skrivskyddat tillstånd. Åtkomst är begränsad till sysadmin-medlemmar
Updateability

Datatyp: nvarchar(128)
Anger om data kan ändras. READ_ONLY: Databasen stöder dataläsningar men inte dataändringar.

- READ_WRITE: Databasen stöder dataläsningar och ändringar.
UserAccess

Datatyp: nvarchar(128)
Anger vilka användare som kan komma åt databasen. SINGLE_USER: Endast en db_owner, dbcreator eller sysadmin-användare i taget

- RESTRICTED_USER: Endast medlemmar i db_owner-, dbcreator- eller sysadmin-roller

- MULTI_USER: Alla användare
Version

Datatyp: int
Internt versionsnummer för SQL Server-koden som databasen skapades med. Identifieras endast i informationssyfte. Stöds inte. Framtida kompatibilitet garanteras inte. – Versionsnummer: Databasen är öppen.

- NULL: Databasen har inte startats.
ReplicaID

Datatyp: nvarchar(128)
Replik-ID för en ansluten hyperskala-databas/replik. Returnerar endast replik-ID:t för en ansluten Hyperskala-databas/replik. Mer information om repliktyper finns i Sekundära hyperskalarepliker.

- NULL: Inte en hyperskala-databas eller så startas inte databasen.

gäller för: Azure SQL Database Hyperscale.

Returtyper

sql_variant

Undantag

Returnerar NULL vid fel, eller om en anropare inte har behörighet att visa objektet.

I SQL Server kan en användare bara visa metadata för skyddsbara objekt som användaren äger eller som användaren har beviljats behörighet till. Den här regeln innebär att metadatautsändande, inbyggda funktioner som OBJECT_ID kan returneras NULL om användaren inte har några behörigheter för objektet. Mer information finns i Konfiguration av synlighet för metadata.

Anmärkningar

DATABASEPROPERTYEX returnerar endast en egenskapsinställning i taget. Om du vill visa flera egenskapsinställningar använder du katalogvyn sys.databases .

Exempel

Kodexemplen i den här artikeln använder AdventureWorks2022- eller AdventureWorksDW2022-exempeldatabasen, som du kan ladda ned från startsidan Microsoft SQL Server Samples och Community Projects.

A. Hämta status för AUTO_SHRINK-databasalternativet

Det här exemplet returnerar status för AUTO_SHRINK databasalternativet AdventureWorks för databasen.

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

Här är resultatet. Detta indikerar att är AUTO_SHRINK av.

0

B. Hämta standardsortering för en databas

Det här exemplet returnerar flera attribut för AdventureWorks databasen.

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

Här är resultatet.

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

C. Använd DATABASEPROPERTYEX för att verifiera anslutningen till repliken

När du använder utskalningsfunktionen i Azure SQL Database kan du kontrollera om du är ansluten till en skrivskyddad replik eller inte genom att köra följande fråga i databasens kontext. Den returnerar READ_ONLY när du är ansluten till en skrivskyddad replik. På så sätt kan du också identifiera när en fråga körs på en skrivskyddad replik.

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