Compartilhar via


ICE32

O ICE32 valida que chaves e chaves estrangeiras no arquivo .msi são do mesmo tamanho e tipos de definição de coluna. Essa ação personalizada ice faz a comparação usando a tabela _Validation e usando os tipos de definição que são retornados por MsiViewGetColumnInfo. Para obter mais informações, consulte de formato de definição de coluna.

Resultado

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 publica dois erros para o exemplo mostrado:

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

_Validation Tabela (parcial)

Mesa Coluna KeyTable KeyColumn
Arquivo Versão Arquivo 1
Aba Column8 Aba 1

 

Definições de coluna (parcial)

Mesa Coluna Tipo Tamanho
Arquivo Arquivo s 72
Arquivo Versão S 32
Aba Coluna1 eu 2
Aba Column8 S 32

 

A coluna Versão da tabela Arquivo 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 Arquivo 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 a Coluna1. Column8 é uma coluna de cadeia de caracteres e Column1 é uma coluna inteiro. Os pares chave estrangeira e chave devem ser definidos para que seus tipos de dados correspondam.

de referência do ICE