DATABASEPROPERTYEX (Transact-SQL)
Gibt die aktuelle Einstellung der angegebenen Datenbankoption oder -eigenschaft für die angegebene Datenbank zurück.
Syntax
DATABASEPROPERTYEX ( database , property )
Argumente
database
Ein Ausdruck, der zum Namen der Datenbank ausgewertet wird, für die Informationen über die benannte Eigenschaft zurückgegeben werden sollen. database ist vom Datentyp nvarchar(128).property
Ein Ausdruck, der für den Namen der Datenbankeigenschaft steht, die zurückgegeben werden soll. property ist vom Datentyp varchar(128) und kann einen der folgenden Werte annehmen. Der Rückgabetyp ist sql_variant. In der folgenden Tabelle wird der Basisdatentyp für den jeweiligen Eigenschaftswert aufgeführt.Hinweis Wenn die Datenbank nicht gestartet wird, geben die Eigenschaften, die SQL Server durch direkten Datenbankzugriff anstatt durch Abrufen des Werts aus den Metadaten abruft, NULL zurück. Das heißt, sofern für die Datenbank AUTO_CLOSE auf ON festgelegt wurde 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 ein Bitmuster, das aus den folgenden Werten berechnet wird.
ArtWertGroß-/Kleinschreibung ignorieren1Akzente ignorieren2Kana ignorieren65536Breite ignorieren131072Der 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
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 Abfrage 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
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
Datenbank ist volltextfähig.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
HinweisDer 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 beim Entwickeln neuer Anwendungen nicht, und planen Sie so bald wie möglich das Ändern von Anwendungen, in denen diese Spalten zurzeit verwendet werden.IsInStandBy
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
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
NULL-Verkettungsoperand ergibt NULL.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsNumericRoundAbortEnabled
Fehler werden erzeugt, 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 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
Rekursives 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 verteilte Datenbank. Sie kann ohne Unterbrechung der Transaktionsreplikation wiederhergestellt werden.
1 = TRUE
0 = FALSE
NULL = Ungültige Eingabe
Basisdatentyp: int
IsTornPageDetectionEnabled
Die SQL Server Database Engine (Datenbankmodul) erkennt unvollständige E/A-Operationen, die durch Stromausfälle oder andere Systemausfälle 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
Eine Liste der LCID-Werte (im Hexadezimalformat) finden Sie unter Sortierungseinstellungen im Setup-Programm.
Recovery
Wiederherstellungsmodell für die Datenbank
FULL = Vollständiges Wiederherstellungsmodell
BULK_LOGGED = Massenprotokolliertes Modell
SIMPLE = Einfaches Wiederherstellungsmodell
Basisdatentyp: nvarchar(128)
SQLSortOrder
SQL Server-Sortierreihenfolge-ID, die in früheren Versionen von SQL Server unterstützt wurde.
0 = Die Datenbank verwendet die Windows-Sortierreihenfolge
>0 = SQL Server-Sortierreihenfolge-ID
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.
HinweisDer Status ONLINE kann zurückgegeben werden, während die Datenbank geöffnet wird und noch nicht wiederhergestellt wurde. Wenn Sie feststellen möchten, wann eine Datenbank Verbindungen zulässt, fragen Sie die Collation-Eigenschaft von DATABASEPROPERTYEX ab. Die Datenbank kann Verbindungen zulassen, wenn die Datenbanksortierung einen Wert ungleich Null zurückgibt.OFFLINE = Die Datenbank wurde offline geschaltet.
RESTORING = Die Datenbank wird wiederhergestellt.
RECOVERING = die Datenbank wird wiederhergestellt und ist noch nicht für Abfragen bereit
SUSPECT = die Datenbank kann nicht wiederhergestellt werden
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 Metadaten ausgebende integrierte Funktionen, z. B. OBJECT_ID, 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 und Behandlung von Problemen bei 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 AdventureWorks2008R2-Datenbank zurück.
SELECT DATABASEPROPERTYEX('AdventureWorks2008R2', '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 AdventureWorks2008R2-Datenbank zurück.
SELECT DATABASEPROPERTYEX('AdventureWorks2008R2', 'Collation');
Dies ist das Resultset.
------------------------------
SQL_Latin1_General_CP1_CI_AI