sysdac_history_internal (Transact-SQL)

Enthält Informationen zu den Aktionen, die zur Verwaltung von Datenebenenanwendungen (DAC) ausgeführt werden. Diese Tabelle wird im dbo-Schema der MSDB-Datenbank gespeichert.

Spaltenname

Datentyp

Beschreibung

action_id

int

Bezeichner der Aktion

sequence_id

int

Identifiziert einen Schritt innerhalb einer Aktion.

instance_id

uniqueidentifier

Der Bezeichner der DAC-Instanz. Diese Spalte kann mit der instance_id-Spalte in dbo.sysdac_instances (Transact-SQL) verknüpft werden.

action_type

tinyint

Bezeichner des Aktionstyps:

0 = deploy

1 = create

2 = rename

3 = detach

4 = delete

action_type_name

varchar(19)

Name des Aktionstyps:

deploy

create

rename

detach

delete

dac_object_type

tinyint

Bezeichner des Typs des von der Aktion betroffenen Objekts:

0 = dacpac

1 = login

2 = database

dac_object_type_name

varchar(8)

Name des Typs des von der Aktion betroffenen Objekts:

dacpac = DAC-Instanz

login

database

action_status

tinyint

Code, der den aktuellen Status der Aktion identifiziert:

0 = pending

1 = success

2 = fail

action_status_name

varchar(11)

Aktueller Status der Aktion:

pending

success

fail

Erforderlich

bit

Wird von Database Engine (Datenbankmodul) beim Zurücksetzen eines DAC-Vorgangs verwendet.

dac_object_name_pretran

sysname

Name des Objekts, bevor ein Commit für die Transaktion ausgeführt wird, in der die Aktion enthalten ist. Wird nur für Datenbanken und Anmeldenamen verwendet.

dac_object_name_posttran

sysname

Name des Objekts, nachdem ein Commit für die Transaktion ausgeführt wurde, in der die Aktion enthalten ist. Wird nur für Datenbanken und Anmeldenamen verwendet.

sqlscript

nvarchar(max)

Transact-SQL-Skript, das eine Aktion für eine Datenbank oder einen Anmeldenamen implementiert.

payload

varbinary(max)

DAC-Paketdefinition, die in einer binären codierten Zeichenfolge gespeichert ist.

comments

varchar(max)

Zeichnet die Anmeldung eines Benutzers auf, der den potenziellen Datenverlust in einem DAC-Upgrade akzeptiert hat.

error_string

nvarchar(max)

Fehlermeldung, die generiert wird, wenn bei der Aktion ein Fehler auftritt.

created_by

sysname

Der Anmeldename, unter dem die Aktion, die diesen Eintrag erstellt hat, gestartet wurde.

date_created

datetime

Datum und Uhrzeit, zu denen dieser Eintrag erstellt wurde.

date_modified

datetime

Datum und Uhrzeit, zu denen der Eintrag zuletzt geändert wurde.

Hinweise

Durch DAC-Verwaltungsaktionen, z. B. das Bereitstellen oder Löschen einer DAC, werden mehrere Schritte generiert. Jeder Aktion wird ein Aktionsbezeichner zugewiesen. Jedem Schritt wird eine Sequenznummer und eine Zeile in sysdac_history_internal zugewiesen, wo der Status des Schritts aufgezeichnet wird. Die einzelnen Zeilen werden mit Beginn des Aktionsschritts erstellt und bei Bedarf aktualisiert, um dem Status des Vorgangs zu entsprechen. Der DAC-Aktion deploy könnten beispielsweise die action_id 12 und vier Zeilen in sysdac_history_internal zugewiesen werden:

action_id

sequence_id

action_type_name

dac_object_type_name

12

0

create

dacpac

12

1

create

login

12

2

create

database

12

3

rename

database

Bei DAC-Vorgängen wie delete werden keine Zeilen aus sysdac_history_internal entfernt. Mithilfe der folgenden Abfrage können die Zeilen für DACs nicht mehr auf einer Instanz von Database Engine (Datenbankmodul) bereitgestellt werden:

DELETE FROM msdb.dbo.sysdac_history_internal
WHERE instance_id NOT IN
   (SELECT instance_id
    FROM msdb.dbo.sysdac_instances_internal);

Das Löschen von Zeilen für aktive DACs betrifft keine DAC-Vorgänge. Die einzige Auswirkung besteht darin, dass nicht der vollständige Verlauf für die DAC angegeben werden kann.

HinweisHinweis

Derzeit ist kein Mechanismus zum Löschen von Zeilen in sysdac_history_internal in SQL Azure verfügbar.

Änderungsverlauf

Aktualisierter Inhalt

Eine Methode zum Löschen von Zeilen wurde hinzugefügt.

Die Spalten required und comments wurden hinzugefügt.