ICE32

O ICE32 valida se as chaves e chaves estrangeiras no arquivo .msi são do mesmo tamanho e tipos de definição de coluna. Essa ação personalizada do ICE faz a comparação usando a tabela _Validation e usando os tipos de definição retornados por MsiViewGetColumnInfo. Para saber mais, confira Formato de definição de coluna.

Result

O ICE32 postará erros se o arquivo .msi contiver chaves estrangeiras para chaves de um tipo de dados de coluna ou tamanho de coluna diferente.

Exemplo

O ICE32 posta dois erros para o exemplo mostrado:

  • Há uma chave estrangeira e uma chave definidas que diferem em tamanho.
  • Há uma chave estrangeira e uma chave definidas que diferem em seu tipo de definição.

Tabela _Validation (parcial)

Tabela Coluna KeyTable KeyColumn
Arquivo Versão Arquivo 1
Flap Coluna8 Flap 1

 

Definições de coluna (parcial)

Tabela Coluna Tipo Tamanho
Arquivo Arquivo s 72
Arquivo Versão S 32
Flap Column1 i 2
Flap Coluna8 S 32

 

A coluna Version da tabela File pode ser uma chave estrangeira para outro arquivo na tabela Arquivo. Isso ocorre com arquivos complementares. No entanto, a coluna Version permite apenas um comprimento de cadeia de caracteres 32, enquanto a coluna File permite um comprimento de cadeia de caracteres 72. Para corrigir esse erro, altere os comprimentos da cadeia de caracteres para corresponder.

Há uma chave estrangeira e uma chave definidas que diferem em seus tipos de definição. A Coluna8 da Tabela Flap é listada como uma chave estrangeira para Column1. Column8 é uma coluna de cadeia de caracteres e Column1 é uma coluna de inteiro. Os pares chave estrangeira e chave devem ser definidos para que seus tipos de dados correspondam.

Referência do ICE