ICE32
Az ICE32 ellenőrzi, hogy a .msi fájlban lévő kulcsok és idegen kulcsok azonos méretűek és oszlopdefiníciós típusok. Ez az ICE egyéni művelet az összehasonlítást a _Validation tábla és a MsiViewGetColumnInfoáltal visszaadott definíciótípusok használatával végzi. További információ: Oszlopdefiníció formátuma.
Eredmény
Az ICE32 hibát jelez, ha a .msi fájlban más oszlophosszú vagy oszlop adattípusú kulcsok idegen kulcsai találhatók.
Példa
Az ICE32 két hibát jelez az alábbi példában:
- Van egy idegen kulcs és kulcs, amely méretben különbözik.
- Van egy idegen kulcs és kulcs, amely a definíció típusában különbözik.
_Validation tábla (részleges)
Asztal | Oszlop | KeyTable | KeyColumn |
---|---|---|---|
Fájl | Verzió | Fájl | 1 |
Fül | Oszlop8 | Fül | 1 |
Oszlopdefiníciók (részleges)
Asztal | Oszlop | Típus | Méret |
---|---|---|---|
Fájl | Fájl | s | 72 |
Fájl | Verzió | S | 32 |
Fül | Oszlop1 | én | 2 |
Fül | Oszlop8 | S | 32 |
A Fájltábla Verzió oszlopa lehet a Fájl tábla egy másik fájljának idegen kulcsa. Ez a társfájlok esetében fordul elő. A Verzió oszlop azonban csak a 32-es sztringhosszt engedélyezi, míg a Fájl oszlop 72 sztringhosszt tesz lehetővé. A hiba kijavításához módosítsa a sztring hosszát az egyezőre.
Van egy idegen kulcs és kulcs, amely különbözik a definíció típusában. A Flap-tábla Oszlop8 oszlopa az 1. oszlophoz tartozó idegen kulcsként van felsorolva. A Column8 egy sztringoszlop, az Oszlop1 pedig egész szám oszlop. Az idegen kulcsokat és kulcspárokat úgy kell definiálni, hogy az adattípusaik egyezzenek.
Kapcsolódó témakörök