Share via


ICE32

ICE32 valida que las claves y las claves externas del archivo .msi son de los mismos tipos de definición de columna y tamaño. Esta acción personalizada de ICE realiza la comparación mediante la tabla _Validation y con los tipos de definición que devuelve MsiViewGetColumnInfo. Para obtener más información, vea Formato de definición de columnas.

Resultado

ICE32 publica errores si el archivo .msi contiene claves externas a las claves de un tipo de datos de columna o de longitud de columna diferente.

Ejemplo

ICE32 publica dos errores para el ejemplo que se muestra:

  • Hay una clave externa y una clave definidas cuyo tamaño es distinto.
  • Hay una clave externa y una clave definidas cuyo tipo de definición es distinto.

Tabla _Validation (parcial)

Tabla Columna KeyTable KeyColumn
Archivo Version Archivo 1
Flap Column8 Flap 1

 

Definiciones de columna (parcial)

Tabla Columna Tipo Size
Archivo Archivo s 72
Archivo Versión S 32
Flap Columna1 i 2
Flap Column8 S 32

 

La columna Version de la tabla File puede ser una clave externa a otro archivo de la tabla File. Esto ocurre con archivos complementarios. Pero la columna Version solo permite una longitud de cadena de 32, mientras que la columna File permite una longitud de cadena de 72. Para corregir este error, cambie las longitudes de cadena para que coincidan.

Hay una clave externa y una clave definidas cuyo tipo de definición es distinto. Column8 de la tabla Flap se muestra como una clave externa a Column1. Column8 es una columna de cadena y Column1 es una columna de entero. La clave externa y los pares de claves deben definirse para que sus tipos de datos coincidan.

Referencia de ICE