ICE32

ICE32 valide que les clés et les clés étrangères dans le fichier .msi sont de la même taille et des types de définition de colonne. Cette action personnalisée ICE effectue la comparaison à l’aide de la table _Validation et à l’aide des types de définition retournés par MsiViewGetColumnInfo. Pour plus d’informations, consultez Le format de définition de colonne.

Résultats

ICE32 publie des erreurs si le fichier .msi contient des clés étrangères à des clés d’une longueur de colonne ou d’un type de données de colonne différent.

Exemple

ICE32 publie deux erreurs pour l’exemple illustré :

  • Il existe une clé étrangère et une clé définie qui diffèrent de la taille.
  • Il existe une clé étrangère et une clé définie qui diffèrent dans leur type de définition.

table _Validation (partielle)

Table de charge de travail Colonne KeyTable KeyColumn
Fichier Version Fichier 1
Rabat Colonne8 Rabat 1

 

Définitions de colonnes (partielles)

Table de charge de travail Colonne Type Taille
Fichier Fichier s 72
Fichier Version S 32
Rabat Column1 i 2
Rabat Colonne8 S 32

 

La colonne Version de la table Fichier peut être une clé étrangère vers un autre fichier dans la table Fichier. Cela se produit avec des fichiers compagnons. Toutefois, la colonne Version autorise uniquement une longueur de chaîne 32, tandis que la colonne Fichier autorise une longueur de chaîne 72. Pour corriger cette erreur, modifiez les longueurs de chaîne en correspondance.

Il existe une clé étrangère et une clé définie qui diffèrent dans leurs types de définition. La colonne 8 de la table flap est répertoriée comme clé étrangère à Column1. Column8 est une colonne de chaîne et Column1 est une colonne entière. Les paires clé et clé étrangère doivent être définies afin que leurs types de données correspondent.

Référence ICE