ICE32
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 retornados por MsiViewGetColumnInfo. Para obter mais informações, consulte Column Definition Format.
Resultado
O ICE32 lança erros se o arquivo .msi contiver chaves estrangeiras para chaves de um comprimento de coluna ou tipo de dados de coluna diferente.
Exemplo
ICE32 posta dois erros para o exemplo mostrado:
- Há uma chave estrangeira e uma chave definida que diferem em tamanho.
- Há uma chave estrangeira e uma chave definida que diferem em seu tipo de definição.
_Validation Tabela (parcial)
Tabela | Coluna | Tabela de teclas | Coluna-chave |
---|---|---|---|
Ficheiro | Versão | Ficheiro | 1 |
Retalho | Coluna8 | Retalho | 1 |
Definições de coluna (parcial)
Tabela | Coluna | Tipo | Tamanho |
---|---|---|---|
Ficheiro | Ficheiro | s | 72 |
Ficheiro | Versão | S | 32 |
Retalho | Coluna1 | eu | 2 |
Retalho | Coluna8 | 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 Versão só permite 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 definida que diferem em seus tipos de definição. A coluna 8 da tabela Flap é listada como uma chave estrangeira para a coluna 1. Column8 é uma coluna de cadeia de caracteres e Column1 é uma coluna inteira. A chave estrangeira e os pares de chaves devem ser definidos para que seus tipos de dados coincidam.
Tópicos relacionados