Eltávolítása az index táblázat adatai - Delphi forrásokból gyik

Get a futási listája indexek társított táblázat olyan egyszerű, mint oka GetIndexNames eljárás TTable, TQuery vagy TStoredProc. GetIndexNames eljárás visszatér egy listát az elérhető az adatállományát TStrignList alkatrész helyezzük formában (a mi példánkban), vagy más vizuális elemek, mint például a TListBox keresztül vagyontárgyak:

Természetesen TStrings lista által visszaadott GetIndexNames, nem használható a vizuális elem. Ez lehet egy tömb index nevét, a memóriában tárolt és használt lista vagy egy tömb.

De van a megszerzésének lehetőségét több információt index táblázat, és nem csak a nevüket. Egyéb tulajdonságok írják le a nevét, minden index mezőnevek, beleértve az egyes index és az index létrehozásához használt őket. A készítmény ezen értékek egy kicsit nehezebb, mint az egyszerű használata GetIndexNames. Alapvetően, ezek az értékek lehet beszerezni egy egyszerű iteráció tulajdonságok IndexDefs TTable komponenst, TQuery vagy TStoredProc. IndexDefs tulajdonság lényegében egy sor rekordot, egy rekordot egy tábla index.

Minden index rekord (index rekord) információkat tartalmaz az indexet. A folyamat, mely során egy sor bejegyzések információkat tartalmazó külön-külön index meglehetősen egyszerű végrehajtani.

Az ingatlan IndexDefs TTable komponens index információs táblázatban alkatrész TTable, TQuery vagy TStoredProc. Szükségtelen IndexDefs tulajdon, viszont, szintén a különböző tulajdonságok, amelyek konkrét információkat a kivont indexek. IndexDefs objektum két tulajdonságot tartalmaz: csak futási időben és csak olvasható zászló; számát jelzi elemek egy tulajdonsága elemek (például a száma indexek a táblázatban). csak futásidőben, és csak olvasható zászló; egy sor tárgyak TIndexDef, minden egyes objektum leírja egy táblázat index.

Az ingatlan gróf IndexDefs az alapja létrehozására ciklusváltozóként amelyben a test segítségével elemeit db ingatlan adatai kivonjuk az egyes index táblázatot. Minden objektum IndexDef, foglalt vagyontárgyak, sokaságából áll, a tulajdonságok, amelyek leírják a jellemzőit minden index külön-külön. Minden objektum tulajdonságai IndexDef csak futásidőben és a zászló „read-only”. Ezek a tulajdonságok: Mielőtt átvevő semmilyen információt az index (száma és tételek) fel kell hívnia frissítése IndexDefs objektumot. Ez a frissítés (vagy inicializálja) index készleteket IndexDef tárgyakat.

Itt egy egyszerű példa a For-loop használunk számláló Count tulajdonság IndexDefs kifogást, és letölti a nevét minden index (ha vannak ilyenek) táblázatok TTable nevű összetevő 1. táblázat:

Az alábbiakban egy példát arra, hogyan kivonat indexinformációval program végrehajtása során annak kimenetét TStringGrid komponens (c SG1 neve).

Amikor a munka asztalok különböző típusú szükség esetén figyelembe kell venni azok sajátosságait. Delphi keresztül lehet hozzájutni hozzáférést biztosít számos típusú táblák, és mindegyiknek megvan a maga sajátosságaira a kivont információt az indexeket.

Amikor dolgozik indexek dBASE, tulajdonságok Fields and Expression töltött típusától függően az index, hogy lehet olyan egyszerű, mint (alapuló egyik mező), és egy komplex (alapuló több mező vagy dBASE-kifejezéseket). Ha az index egyszerű, a Fields tulajdonság tartalmazza a táblázat mező nevét, amelyen az index épül, és az Expression ingatlan üres lesz. Ha az index egy összetett, Expression tulajdonság egy kifejezés, alapján, amely az index (például „Mező1 + Mező2”) épült, és a Fields tulajdonság üres lesz.

Amikor dolgozik elsődleges index Paradox, Név ingatlan üres, a Fields tulajdonság tartalmazza a mező (k), amelyen az index létrehozásakor és a Beállítások ingatlan tartalmaz ixPrimary. Amikor dolgozik másodlagos indexek neve tulajdonság nevét tartalmazza a másodlagos index, a Fields tulajdonság tartalmazza a mező (k), amelyen az index jön létre, az Options tulajdonság is tartalmazhat egy értéket és lehet üres.

Fields tulajdonság az indexek alapján több mezőt, amely tartalmazza a mező nevét, elválasztva. Indexek alapján csak az egyik területen a Fields tulajdonság tartalmazza a mező nevét csak.

Mindkét típusú indexek épült mind alapján egy vagy több mező, Expression ingatlan üres lesz. Indexek esetében, amelyek alapján egy területen, a Fields tulajdonság tartalmazza a mező nevét, amelyen az index készült. Fields tulajdonság az indexek alapján több mezőt, amely tartalmazza a mező nevét, elválasztva.

Indexek meghatározása a CREATE TABLE utasítás, mint egy elsődleges, a Név tulajdonságot tartalmazza az értéke „RDB $ PRIMARYn”, ahol n - a sorszáma karakter, amely egyedileg azonosítja az elsődleges index az adatbázisban metaadatokat. Másodlagos indexek tartalmazzák a tényleges neve az index.

Az idegen kulcsok is tartalmaz az indexek által létrehozott rendszert. Ezeket az indexeket fogja tartalmazni IndexDefs tulajdon és a neve „RDB $ FOREIGNn”, ahol n - a sorszáma karakter, amely egyedileg azonosítja az index az adatbázisban metaadatokat.

Fields tulajdonság az indexek alapján több mezőt, amely tartalmazza a mező nevét, elválasztva. Indexek alapján csak az egyik területen a Fields tulajdonság tartalmazza a mező nevét csak.