Partager via


table _TransformView

Il s’agit d’une table temporaire en lecture seule utilisée pour afficher les transformations en mode de transformation. Cette table n’est jamais conservée par le programme d’installation.

Pour appeler le mode d’affichage de transformation, obtenez un handle et ouvrez la base de données de référence. Consultez Obtention d’un handle de base de données. Appelez MsiDatabaseApplyTransform avec MSITRANSFORM_ERROR_VIEWTRANSFORM. Cela empêche l’application de la transformation à la base de données et vide le contenu de la transformation dans la table _TransformView. Les données de la table sont accessibles à l’aide de requêtes SQL. Consultez Utilisation des requêtes.

La table _TransformView n’est pas effacée lorsqu’une autre transformation est appliquée. Le tableau reflète l’effet cumulatif des applications successives. Pour afficher les transformations séparément, vous devez libérer la table.

La table _TransformView contient les colonnes suivantes.

Colonne Type Clé Nullable
Table identificateur Y N
Colonne texte Y N
Ramer texte Y Y
Données texte N Y
Courant texte N Y

Colonne

table

Nom d’une table de base de données modifiée.

colonne

Nom d’une colonne de table modifiée ou INSERT, DELETE, CREATE ou DROP.

ligne

Liste des valeurs de clé primaire séparées par les onglets. Les valeurs de clé primaire Null sont représentées par un seul espace. Une valeur Null dans cette colonne indique une modification de schéma.

données

Données, nom d’un flux de données ou définition de colonne.

actuel

Valeur actuelle de la base de données de référence ou colonne un nombre.

Remarques

Le _TransformView est conservé en mémoire par un nombre de verrous, qui peut être libéré avec la commande SQL suivante.

« ALTER TABLE _TransformView FREE ».

Les données de la table sont accessibles à l’aide de requêtes SQL. Le langage SQL a deux divisions principales : DDL (Data Definition Language) utilisée pour définir tous les objets d’une base de données SQL et DML (Data Manipulation Language) utilisés pour sélectionner, insérer, mettre à jour et supprimer des données dans les objets définis à l’aide de DDL.

Les opérations de transformation DML (Data Manipulation Language) sont indiquées comme suit. Data Manipulation Language (DML) sont ces instructions dans SQL qui manipulent, par opposition à définir des données.

Opération de transformation Résultat SQL
Modifier des données {table} {column} {row} {data} {valeur actuelle}
Insérer une ligne {table} « INSERT » {row} NULL NULL
Supprimer une ligne {table} « DELETE » {row} NULL NULL

Les opérations de transformation DDL (Data Definition Language) sont indiquées comme suit. Data Definition Language (DDL) sont ces instructions dans SQL qui définissent, par opposition à manipuler des données.

Opération de transformation Résultat SQL
Ajouter une colonne {table} {column} NULL {defn} {numéro de colonne}
Ajouter une table {table} NULL « CREATE » NULL
Supprimer la table {table} « DROP » NULL NULL NULL

Lorsque l’application d’une transformation ajoute cette table, le champ Données reçoit du texte qui peut être interprété comme une valeur entière 16 bits. La valeur décrit la colonne nommée dans le champ Colonne. Vous pouvez comparer la valeur entière aux constantes du tableau suivant pour déterminer la définition de la colonne modifiée.

Mors Description
Bits 0 7
Hexadécimal : 0x0000 0x0100
Décimal : 0 255
Largeur de colonne
Bit 8
Hexadécimal : 0x0100
Décimal : 256
Colonne persistante. Zéro signifie une colonne temporaire.
Bit 9
Hexadécimal : 0x0200
Décimal : 1023
Colonne localisable. Zéro signifie que la colonne ne peut pas être localisée.
Bits 10 11
Hexadécimal : 0x0000
Décimal : 0
Entier long
Hexadécimal : 0x0400
Décimal : 1024
Entier court
Hexadécimal : 0x0800
Décimal : 2048
Objet binaire
Hexadécimal : 0x0C00
Décimal : 3072
Corde
Bit 12
Hexadécimal : 0x1000
Décimal : 4096
Colonne nullable. Zéro signifie que la colonne n’est pas nullable.
Bit 13
Hexadécimal : 0x2000
Décimal : 8192
Colonne clé primaire. Zéro signifie que cette colonne n’est pas une clé primaire.
Bits 14 15
Hexadécimal : 0x4000 0x8000
Décimal : 16384 32768
Réservé

Pour obtenir un exemple de script qui illustre la table _TransformView, consultez Afficher une transformation.