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 la 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éploiement

création

changement de nom

détachement

suppression

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

Obligatoire

bit

Utilisée par le Moteur de base de données lors de l'annulation 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.

charge utile

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 ayant accepté la perte potentielle de ses données lors d'une mise à jour de 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éation

dacpac

12

1

create

login

12

2

create

database

12

3

rename

database

Opérations DAC, telles que la suppression ou la non suppression de lignes à partir de sysdac_history_internal. Vous pouvez utiliser la requête suivante pour supprimer manuellement des lignes de 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 DAC actives n'a aucun impact sur les opérations DAC ; la seule conséquence est que vous ne pourrez plus consulter l'historique complet de DAC.

Notes

Actuellement, il n'existe aucun moyen de supprimer les lignes sysdac_history_internal sur SQL Azure.

Historique des modifications

Mise à jour du contenu

Ajout d'une méthode de suppression de lignes.

Ajout des colonnes obligatoire et commentaires.