DATABASEPROPERTYEX (Transact-SQL)
Gibt die aktuelle Einstellung der angegebenen Datenbankoption oder -eigenschaft für die angegebene Datenbank in SQL Server zurück.
Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version), Azure SQL-Datenbank. |
Transact-SQL-Syntaxkonventionen
Syntax
DATABASEPROPERTYEX ( database , property )
Argumente
database
Ein Ausdruck, der den Namen der Datenbank darstellt, für die Informationen über die benannte Eigenschaft zurückgegeben werden sollen. database ist vom Datentyp nvarchar(128).property
Ein Ausdruck, der den Namen der zurückzugebenden Datenbankeigenschaft darstellt. property ist vom Datentyp varchar(128). Die folgenden Werte sind möglich: Der Rückgabetyp ist sql_variant. In der folgenden Tabelle ist der Basisdatentyp für die einzelnen Eigenschaftswertswerte aufgeführt.Hinweis
Wenn die Datenbank nicht gestartet wurde, geben die Eigenschaften, die SQL Server durch direkten Datenbankzugriff anstatt durch Abrufen des Werts aus den Metadaten abruft, NULL zurück.Das gilt, solange für die Datenbank AUTO_CLOSE auf ON festgelegt oder die Datenbank offline ist.
Eigenschaft
Beschreibung
Rückgabewert
Collation
Standardsortierungsname der Datenbank
Sortierungsname
NULL = Die Datenbank wurde nicht gestartet.
Basisdatentyp: nvarchar(128)
ComparisonStyle
Die Windows-Vergleichsart der Sortierung. ComparisonStyle ist eine Bitmap, die anhand der folgenden Werte berechnet wird.
Style
Wert
Groß-/Kleinschreibung ignorieren
1
Akzente ignorieren
2
Kana ignorieren
65536
Breite ignorieren
131072
Der Standardwert 196.609 ist beispielsweise das Ergebnis der Kombination der Optionen Groß-/Kleinschreibung ignorieren, Kana ignorieren und Breite ignorieren.
Gibt die Vergleichsart zurück.
Gibt für alle binären Sortierungen 0 zurück.
Basisdatentyp: int
Edition
Die Datenbankedition.
Web = Web Edition-Datenbank
Business = Business Edition-Datenbank
NULL = Die Datenbank wurde nicht gestartet.
Basisdatentyp: nvarchar(64).
Gilt für: Azure SQL-Datenbank.
IsAnsiNullDefault
Die Datenbank befolgt ISO-Regeln für das Zulassen von NULL-Werten.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsAnsiNullsEnabled
Alle Vergleiche mit einem NULL-Wert werden zu einem unbekannten Wert ausgewertet.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsAnsiPaddingEnabled
Zeichenfolgen werden vor dem Vergleich oder Einfügen auf dieselbe Länge aufgefüllt.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsAnsiWarningsEnabled
Fehler- oder Warnmeldungen werden ausgegeben, wenn Standardfehlerbedingungen auftreten.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsArithmeticAbortEnabled
Abfragen werden beendet, wenn während der Abfrageausführung ein Überlauffehler oder ein Fehler aufgrund einer Division durch Null auftritt.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsAutoClose
Die Datenbank wird ordnungsgemäß heruntergefahren, und Ressourcen werden freigegeben, nachdem der letzte Benutzer die Anwendung beendet hat.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsAutoCreateStatistics
Der Abfrageoptimierer erstellt Statistiken für einzelne Spalten nach Bedarf, um die Abfrageleistung zu verbessern.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsAutoCreateStatisticsIncremental
Automatisch erstellte Statistiken für einzelne Spalten sind inkrementell, falls möglich.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
Gilt für: SQL Server 2014 bis SQL Server 2014.
IsAutoShrink
Datenbankdateien sind Kandidaten für das automatische periodische Verkleinern.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsAutoUpdateStatistics
Der Abfrageoptimierer aktualisiert vorhandene Statistiken, wenn sie von einer Abfrage verwendet werden und veraltet sein könnten.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsCloseCursorsOnCommitEnabled
Cursor, die beim Ausführen eines Commits für eine Transaktion geöffnet sind, werden geschlossen.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsFulltextEnabled
Die Datenbank ist für die Volltext- und semantische Indizierung aktiviert.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
Hinweis
Der Wert dieser Eigenschaft hat keine Auswirkungen.In Benutzerdatenbanken ist die Volltextsuche standardmäßig aktiviert.Diese Spalte wird in zukünftigen Versionen von SQL Server nicht mehr bereitgestellt.Verwenden Sie diese Spalte nicht beim Entwickeln neuer Anwendungen, und planen Sie zum frühstmöglichen Zeitpunkt die Umstellung von Anwendungen, in denen diese Spalten zurzeit verwendet werden.
Gilt für: SQL Server 2008 bis SQL Server 2014.
IsInStandBy
Die Datenbank ist im Schreibschutzmodus online. Die Wiederherstellung des Protokolls ist zulässig.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsLocalCursorsDefault
Cursordeklarationen werden standardmäßig auf LOCAL festgelegt.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsMemoryOptimizedElevateToSnapshotEnabled
Auf speicheroptimierte Tabellen wird mit der SNAPSHOT-Isolation zugegriffen, wenn die Sitzungseinstellung TRANSACTION ISOLATION LEVEL auf eine niedrigere Isolationsstufe festgelegt ist (READ COMMITTED oder READ UNCOMMITTED).
Gilt für: SQL Server 2014 bis SQL Server 2014.
1 = TRUE
0 = FALSE
Basisdatentyp: int
IsMergePublished
Die Tabellen einer Datenbank können zur Mergereplikation veröffentlicht werden, wenn die Replikation installiert ist.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsNullConcat
Der Operand für die NULL-Verkettung ergibt NULL.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsNumericRoundAbortEnabled
Fehler werden generiert, wenn ein Genauigkeitsverlust in Ausdrücken auftritt.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsParameterizationForced
Die SET-Option PARAMETERIZATION wurde für die Datenbank auf FORCED festgelegt.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
IsQuotedIdentifiersEnabled
Für Bezeichner können doppelte Anführungszeichen verwendet werden.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsPublished
Falls die Replikation installiert ist, können die Tabellen der Datenbank für die Momentaufnahme- oder Transaktionsreplikation veröffentlicht werden.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsRecursiveTriggersEnabled
Das rekursive Auslösen von Triggern ist aktiviert.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsSubscribed
Die Datenbank wurde für eine Veröffentlichung abonniert.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsSyncWithBackup
Die Datenbank ist entweder eine veröffentlichte oder eine Verteilungsdatenbank. Sie kann ohne Unterbrechung der Transaktionsreplikation wiederhergestellt werden.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsTornPageDetectionEnabled
SQL Server-Datenbankmodul erkennt unvollständige E/A-Vorgänge, die durch Stromausfälle oder andere Systemunterbrechungen verursacht wurden.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
LCID
Der Windows-Gebietsschemabezeichner (Locale Identifier, LCID) der Sortierung.
LCID-Wert (im Dezimalformat).
Basisdatentyp: int
MaxSizeInBytes
Maximale Datenbankgröße in Bytes.
1073741824
5368709120
10737418240
21474836480
32212254720
42949672960
53687091200
NULL = Die Datenbank wurde nicht gestartet
Basisdatentyp: bigint
Gilt für: Azure SQL-Datenbank.
Recovery
Wiederherstellungsmodell für die Datenbank.
FULL = Vollständiges Wiederherstellungsmodell
BULK_LOGGED = Massenprotokolliertes Modell
SIMPLE = Einfaches Wiederherstellungsmodell
Basisdatentyp: nvarchar(128)
SQLSortOrder
Die ID der SQL Server-Sortierreihenfolge, die in früheren Versionen von SQL Server unterstützt wurde.
0 = Die Datenbank verwendet die Windows-Sortierung
>0 = ID der SQL Server-Sortierreihenfolge
NULL = Ungültige Eingabe, oder die Datenbank wurde nicht gestartet
Basisdatentyp: tinyint
Status
Der Status der Datenbank.
ONLINE = Die Datenbank ist für die Abfrage verfügbar.
Hinweis
Der ONLINE-Status kann zurückgegeben werden, während die Datenbank geöffnet wird, auch wenn sie noch nicht wiederhergestellt ist.Um zu ermitteln, wann eine Datenbank Verbindungen akzeptieren kann, fragen Sie die Collation-Eigenschaft von DATABASEPROPERTYEX ab.Die Datenbank kann Verbindungen akzeptieren, wenn die Datenbanksortierung einen Wert ungleich NULL zurückgibt.Fragen Sie bei AlwaysOn-Datenbanken die database_state-Spalte oder die database_state_desc-Spalte von sys.dm_hadr_database_replica_states ab.
OFFLINE = Die Datenbank wurde explizit offline geschaltet.
RESTORING = Die Datenbank wird wiederhergestellt.
RECOVERING = die Datenbank wird wiederhergestellt und ist noch nicht für Abfragen bereit.
SUSPECT = Die Datenbank wurde nicht wiederhergestellt.
EMERGENCY = Die Datenbank befindet sich im schreibgeschützten Notfallmodus. Der Zugriff ist auf sysadmin-Mitglieder beschränkt.
Basisdatentyp: nvarchar(128)
Updateability
Zeigt an, ob Daten geändert werden können.
READ_ONLY = Die Daten können gelesen, jedoch nicht geändert werden.
READ_WRITE = Die Daten können gelesen und geändert werden.
Basisdatentyp: nvarchar(128)
UserAccess
Zeigt an, welche Benutzer auf die Datenbank zugreifen können.
SINGLE_USER = Nur jeweils ein Benutzer von db_owner, dbcreator oder sysadmin
RESTRICTED_USER = Nur Mitglieder der Rollen db_owner, dbcreator und sysadmin
MULTI_USER = Alle Benutzer
Basisdatentyp: nvarchar(128)
Version
Die interne Versionsnummer des SQL Server-Codes, mit dem die Datenbank erstellt wurde. Nur für Informationszwecke identifiziert. Nicht unterstützt. Zukünftige Kompatibilität wird nicht sichergestellt.
Versionsnummer = Die Datenbank ist geöffnet.
NULL = Die Datenbank wurde nicht gestartet.
Basisdatentyp: int
Rückgabetypen
sql_variant
Ausnahmen
Gibt NULL bei einem Fehler zurück oder wenn ein Aufrufer nicht über Berechtigungen zum Anzeigen des Objekts verfügt.
In SQL Server kann ein Benutzer nur die Metadaten sicherungsfähiger Elemente anzeigen, bei denen der Benutzer entweder der Besitzer ist oder für die dem Benutzer eine Berechtigung erteilt wurde. Dies bedeutet, dass integrierte Funktionen (z. B. OBJECT_ID), die Metadaten ausgeben, möglicherweise NULL zurückgeben, wenn dem Benutzer für das Objekt keine Berechtigung erteilt wurde. Weitere Informationen finden Sie unter Konfigurieren der Sichtbarkeit von Metadaten.
Hinweise
DATABASEPROPERTYEX gibt jeweils nur eine Eigenschaftseinstellung zurück. Verwenden Sie die sys.databases-Katalogsicht, um mehrere Eigenschaftseinstellungen anzuzeigen.
Beispiele
A.Abrufen des Status der Datenbankoption AUTO_SHRINK
Das folgende Beispiel gibt den Status der AUTO_SHRINK-Datenbankoption für die AdventureWorks-Datenbank zurück.
SELECT DATABASEPROPERTYEX('AdventureWorks2012', 'IsAutoShrink');
Dies ist das Resultset. Dies gibt an, dass AUTO_SHRINK auf OFF festgelegt ist.
------------------
0
B.Abrufen der Standardsortierung für eine Datenbank
Das folgende Beispiel gibt den Namen der Standardsortierung für die AdventureWorks-Datenbank zurück.
SELECT DATABASEPROPERTYEX('AdventureWorks2012', 'Collation');
Dies ist das Resultset.
------------------------------
SQL_Latin1_General_CP1_CI_AI
Siehe auch
Verweis
sys.database_files (Transact-SQL)