Tudd Intuíció, előadás, hazai (dinamikus) adatbázis

Ebben a fejezetben, akkor elkezdjük megtanulni dolgozni adatbázisok Prologue.

Egyrészt, Prolog -programs nem hiába nevezik tudásbázisok. Prolog könnyen megvalósítható a relációs adatbázisok. A leggyakoribb manapság. Bármilyen relációs adatbázis tábla leírható egy sor megfelelő tények, ahol minden rekord a forrás tábla megfelel egy tény. Minden mező megegyezik az állítmány érve, amely megvalósítja az asztalra. Sok disztribúció tartalmaz Prolog példaként, a bázis része az SQL nyelv. Azt mondhatjuk, hogy a szerkezet egy relációs adatbázis tartalmazza a szerkezet Prolog programok.

Másrészt, a Turbo Prologue. amely még mindig a hangsúly a mi természetesen azt beépített eszközök dolgozó két típusú adatbázisok: belső és külső. Belső adatbázis úgynevezett mert azok feldolgozása kizárólag a számítógép memóriájában, szemben a külső adatbázisokhoz. feldolgozható lemezen vagy a memóriában. Mivel a belső adatbázis található a számítógép memóriájában, persze, hogy velük együtt dolgozni sokkal gyorsabb, mint a külső. Másrészt, a kapacitás a fő memória általában sokkal kisebb, mint a kapacitás a külső memória. Ebből következik, hogy a térfogata a külső adatbázis lényegesen nagyobb lehet, mint a belső alapja adatok. És ha azt feltételezzük, hogy a bázis lehet elég nagy, akkor használja a nevét egy külső adatbázisba.

Tanulmány a külső adatbázisok túlmutat ezt a folyamatot.

Ebben a fejezetben azt vizsgáljuk a belső, vagy ahogy ők nevezik, a dinamikus adatbázis.

Belső adatbázis áll tényeket lehet dinamikusan, futásidőben hozzá az adatbázishoz, és törölje azt, fájlba menteni, töltse fel a tények egy fájlt az adatbázisba. Ezek a tények is kizárólag predikátumok ismertet egy adatbázisban állítmány leírása.

Ha a szakasz leírja az adatbázisok állítmány a programban csak egy van, akkor nem lehet megnevezni. Ebben az esetben, akkor automatikusan kap egy alapértelmezett nevet dbasedom. Abban az esetben, számos adatbázis állítmány leírásai szakaszok, csak az egyikük lehet anonim. Minden más kell egy egyedi nevet, amely szerepel a név után DATABASE és kötőjel listájában. Amikor kijelentette leíró részben adatbázis predikátumok. fordítóprogram belsőleg nyilatkozik a megfelelő domain neve megegyezik, hogy a szakasz; Ez lehetővé teszi a különleges predikátumok kezelni a tények szempontjából.

Leírás Adatbázis predikátumok egybeesik a leírás részben predikátumok állítmány leírást. Azonban ezek a predikátumok lehet működtetni, mint egy beépített predikátumok paraméterek, amelyeket fogjuk be később. Ezen túlmenően, a tények az ezekkel predikátumok adhatók hozzá, és eltávolítjuk a futás.

Felhívjuk figyelmét, hogy az alapján a csak a tényeket, nem a következtetési szabályok is tartalmaznak adatokat, az adatbázis tények nem tartalmaznak szabad változók. Ez egy másik jelentős különbség a klasszikus Prolog Turbo Prolog, amelyek a program során, akkor adjunk hozzá, és távolítsa el a nem csak a tények, hanem a szabályokat. Megjegyezzük, hogy a Visual Prolog, ami az utódja Turbo Prolog predikátumok a belső adatbázisból részen cím szó DATABASE helyébe szinonimája tényeket. ami tovább hangsúlyozza, hogy csak a tényeket, de nem a szabályok tárolható egy belső adatbázisban.

Ismerkedjen integrált Turbo Prolog predikátum, amelynek célja, hogy működjön együtt a belső adatbázisban. Minden nézett több predikátumok lehet használni egy olyan kiviteli alak, egy vagy két érveket. És az egy érv az opciót használjuk, ha a belső adatbázis nincs neve. Ha ez által megnevezett bázis, meg kell használni a két érv állítmány. ahol a második érv - az adatbázis nevét.

Kezdjük az állítmány, amelyekkel a program során, akkor hozzáadni vagy eltávolítani adatbázis tényeket.

Hozzáadni tények egy belső adatbázis használatához három érvényesíteni predikátumok. asserta vagy assertz. A különbség a predikátumok, hogy asserta állítmány hozzáteszi azt a tényt, hogy más tényező (a felső-end adatbázis), és assertz állítmány hozzáteszi további tény a tény után (a végén az adatbázis). érvényesíteni állítmány hozzá verziókkal való kompatibilitás Prolog és dolgozik pontosan ugyanúgy, mint assertz. Az első paraméter határozza meg az e predikátumok hozzá kell adni azt a tényt, mint a második, opcionális - belső adatbázis neve. amelyhez hozzáadjuk azt a tényt. Azt mondhatjuk, hogy a predikátumok állítják assertz és a munka egy sor tények a sorban, és asserta állítmány - mint egy verem.

Ahhoz, hogy távolítsa el a tényeket az adatbázisból a predikátumok visszahúzódik és retractall. Állítmány visszahúzó eltávolítja a belső adatbázis elejétől az első tény, ami lehet azonosítani az első paraméter. A második opcionális paraméter az állítmány a belső adatbázis nevét.

Ahhoz, hogy törölje az összes predikátumok megfelelő első argumentum egy állítmány retractall. Ahhoz, hogy távolítsa el az összes bizonyítékot egyes belső adatbázis hívjanak az állítmány. mutat rá, mint az első paraméter a névtelen változó. Mivel a névtelen változó illeszkedik minden tárgyat, és retractall állítmány eltávolítja az összes tényt, hogy azonosítani lehet annak első érv a tények törlődik a belső adatbázisban. Ha a második argumentum az állítmány megadott adatbázis nevét. A tények eltávolítjuk a megadott adatbázis. Ha a második argumentum nincs megadva, a tények eltávolítjuk egyetlen névtelen tárol. Megjegyezzük, hogy retractall állítmány lehet helyettesíteni kombinációja predikátumok visszahúzódik, és nem az alábbiak szerint:

Ahhoz, hogy megőrizzék a dinamikus adatbázis lemez menteni az állítmány. Úgy ment, hogy egy szöveges fájlt egy név volt megadva, mint az első paraméter az állítmány. Ha az opcionális második paraméter kimaradt, van bizonyítékok megőrzése egyetlen névtelen belső adatbázisban. Ha azt mondták, a belső adatbázis neve. A tények az adott adatbázis fájlt tárolni.

Tények mentett szöveges fájlt lemezre lehet betölteni RAM kikéri csapat. Az első paraméter nevét adja meg az állítmány szöveges fájlt, amelyből a betölteni kívánt tényeket. Ha a második paraméter nincs megadva, a tények lesz betöltve egy meg nem nevezett belső adatbázisban. Ha a második opció meg van adva, a tények feltöltésre kerül a belső adatbázisba. akinek a neve került a második paraméter az állítmány. Az állítmány nem fog sikerülni, ha az olvasandó fájl elég szabad hely a memóriában, vagy ha a megadott fájl nem található a lemezen, vagy ha hibákat tartalmaz (alább kicsit bővebben, mik ezek).

Kapcsolódó cikkek