Partager via


sysdac_history_internal (Transact-SQL)

Contient des informations sur les actions entreprises pour gérer les applications de la couche Données (DAC). Cette table est stockée dans le schéma dbo de la base de données msdb.

Nom de colonne

Type de données

Description

action_id

int

Identificateur de l'action.

sequence_id

int

Identifie une étape dans une action.

instance_id

uniqueidentifier

Identificateur de l'instance DAC. Il est possible de joindre cette colonne à la colonne instance_id dans dbo.sysdac_instances (Transact-SQL).

action_type

tinyint

Identificateur du type d'action :

0 = déploiement

1 = création

2 = changement de nom

3 = détachement

4 = suppression

action_type_name

varchar(19)

Nom du type d'action :

déployer

créer

renommer

détachement

supprimer

dac_object_type

tinyint

Identificateur du type d'objet affecté par l'action :

0 = dacpac

1 = connexion

2 = base de données

dac_object_type_name

varchar(8)

Nom du type d'objet affecté par l'action :

dacpac = instance DAC

connexion

base de données

action_status

tinyint

Code qui identifie l'état actuel de l'action :

0 = en attente

1 = réussite

2 = échec

action_status_name

varchar(11)

État actuel de l'action :

en attente

réussite

échec

Requis

bit

Utilisé par le moteur de base de données lors de la restauration d'une opération DAC.

dac_object_name_pretran

sysname

Nom de l'objet avant la validation de la transaction qui contient l'action. Utilisé uniquement pour les bases de données et les connexions.

dac_object_name_posttran

sysname

Nom de l'objet après la validation de la transaction qui contient l'action. Utilisé uniquement pour les bases de données et les connexions.

sqlscript

nvarchar(max)

Script Transact-SQL qui implémente une action sur une base de données ou connexion.

payload

varbinary(max)

Définition de package DAC enregistrée dans une chaîne encodée au format binaire.

Commentaires

varchar(max)

Enregistre la connexion d'un utilisateur qui a accepté la perte de données potentielle dans une mise à niveau DAC.

error_string

nvarchar(max)

Message d'erreur généré si une erreur se produit lors de l'action.

created_by

sysname

Connexion à l'origine de l'action qui a créé cette entrée.

date_created

datetime

Date et heure de création de cette entrée.

date_modified

datetime

Date et heure de la dernière modification apportée à l'entrée.

Notes

Les actions de gestion de la DAC, telles que le déploiement ou la suppression d'une DAC, génèrent plusieurs étapes. Un identificateur d'action est attribué à chaque action. Un numéro de séquence et une ligne dans sysdac_history_internal, où l'état de l'étape est enregistré, sont attribués à chaque étape. Chaque ligne est créée lors du démarrage de l'étape de l'action et est mise à jour autant que nécessaire pour refléter l'état de l'opération. Par exemple, action_id 12 et quatre lignes dans sysdac_history_internal pourraient être attribués à une action de déploiement d'une DAC :

action_id

sequence_id

action_type_name

dac_object_type_name

12

0

créer

dacpac

12

1

créer

connexion

12

2

créer

base de données

12

3

renommer

base de données

Les opérations DAC, telles que la suppression, ne suppriment pas de lignes dans sysdac_history_internal. Vous pouvez utiliser la requête suivante pour supprimer manuellement les lignes pour les opérations DAC qui ne sont plus déployées sur une instance du moteur de base de données :

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

La suppression de lignes pour les opérations DAC actives n'a aucune incidence sur les opérations DAC, si ce n'est que vous ne pourrez pas créer de rapport sur l'historique complet de l'opérations DAC.

[!REMARQUE]

Actuellement, il n'existe aucun mécanisme pour supprimer des lignes sysdac_history_internal sur SQL Azure.

Voir aussi

Référence

dbo.sysdac_instances (Transact-SQL)

sysdac_instances_internal (Transact-SQL)

Concepts

Applications de la couche Données