Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Visual Fox Pro Visual Fox Pro Databáze výhody a nevýhody Ing. Emilie Šeptáková.

Podobné prezentace


Prezentace na téma: "Visual Fox Pro Visual Fox Pro Databáze výhody a nevýhody Ing. Emilie Šeptáková."— Transkript prezentace:

1 Visual Fox Pro Visual Fox Pro Databáze výhody a nevýhody Ing. Emilie Šeptáková

2 2 VFP - Databáze Volné tabulky – dočasné vazby Volné tabulky – dočasné vazby Databáze Databáze Je uložena v kontejneru databáze (.dbc,.dcx,.dct) Je uložena v kontejneru databáze (.dbc,.dcx,.dct) Obsahuje informace o Obsahuje informace o Tabulkách, atributech, indexech, trvalých vazbách (v literatuře relacích), spojeních, kurzorech - pohledech Tabulkách, atributech, indexech, trvalých vazbách (v literatuře relacích), spojeních, kurzorech - pohledech Umístění tabulky, ověřovací pravidla a chyb. zprávy na úrovni tabulky a atributů, jméno prim. klíče, vazby mezi tabulkami, pravidla RI (referenční integrity – tj. co se má udělat se závislými záznamy,pokud se uživatel pokusí odstranit hlavní záznam) Umístění tabulky, ověřovací pravidla a chyb. zprávy na úrovni tabulky a atributů, jméno prim. klíče, vazby mezi tabulkami, pravidla RI (referenční integrity – tj. co se má udělat se závislými záznamy,pokud se uživatel pokusí odstranit hlavní záznam)

3 3 VFP - databáze Databáze Databáze přístup k tabulce – jedině prostřednictvím databáze přístup k tabulce – jedině prostřednictvím databáze můžete definovat dlouhá jména pro tabulky a atributy (až 128 znaků) můžete definovat dlouhá jména pro tabulky a atributy (až 128 znaků) komentáře k tabulkám a atributům komentáře k tabulkám a atributům definice výchozí hodnoty atributu, ověření na úrovni atributu, záznamu definice výchozí hodnoty atributu, ověření na úrovni atributu, záznamu trvalé vazby trvalé vazby zpracování transakcí funguje pouze nad tabulkami, které jsou v databázi zpracování transakcí funguje pouze nad tabulkami, které jsou v databázi pravidla RI – na jednom místě – uložené procedury pravidla RI – na jednom místě – uložené procedury Nevýhoda Nevýhoda tabulka může náležet jen jedné databázi - backlink tabulka může náležet jen jedné databázi - backlink

4 4

5 5

6 6

7 7 VFP - příkazy pro práci s db OPEN DATABASE [FileName | ?] [EXCLUSIVE | SHARED] [NOUPDATE] [VALIDATE] OPEN DATABASE [FileName | ?] [EXCLUSIVE | SHARED] [NOUPDATE] [VALIDATE] ADD TABLE TableName | ? [NAME LongTableName] ADD TABLE TableName | ? [NAME LongTableName] REMOVE TABLE TableName | ? [DELETE] [RECYCLE] REMOVE TABLE TableName | ? [DELETE] [RECYCLE] SET DATABASE TO [DatabaseName] SET DATABASE TO [DatabaseName] CLOSE [ALL | ALTERNATE | DATABASES [ALL] | DEBUGGER | FORMAT | INDEXES | PROCEDURE | TABLES [ALL]] CLOSE [ALL | ALTERNATE | DATABASES [ALL] | DEBUGGER | FORMAT | INDEXES | PROCEDURE | TABLES [ALL]] DELETE DATABASE DatabaseName | ? [DELETETABLES] [RECYCLE] DELETE DATABASE DatabaseName | ? [DELETETABLES] [RECYCLE] DISPLAY DATABASE [TO PRINTER [PROMPT] | TO FILE FileName [ADDITIVE]] [NOCONSOLE] - info DISPLAY DATABASE [TO PRINTER [PROMPT] | TO FILE FileName [ADDITIVE]] [NOCONSOLE] - info GENDBC - aplikace - vypíše SQL příkazy CREATE GENDBC - aplikace - vypíše SQL příkazy CREATE

8 8 VFP - funkce pro práci s db Dbc() - vrátí cestu a jméno aktivní databáze Dbc() - vrátí cestu a jméno aktivní databáze Dbused(Jméno) – vrátí.T., jestliže je db otevřená Dbused(Jméno) – vrátí.T., jestliže je db otevřená Adatabases(pole) – vrátí vyplněné pole,cestu a jméno všech otevřených databází Adatabases(pole) – vrátí vyplněné pole,cestu a jméno všech otevřených databází DBGETPROP(cName, cType, cProperty) DBGETPROP(cName, cType, cProperty) * Displays the primary key field cResults = DBGETPROP("customer", "Table", "PrimaryKey") =MESSAGEBOX(cResults) && Displays 'cust_id' DBSETPROP(cName, cType, cProperty, ePrValue) DBSETPROP(cName, cType, cProperty, ePrValue) INDBC(cDatabaseObjectName, cType) – vrátí.T., jestliže objekt daného typu je v aktuální databázi INDBC(cDatabaseObjectName, cType) – vrátí.T., jestliže objekt daného typu je v aktuální databázi … …

9 9 VFP - vytvoření tabulky v db SQL CREATE TABLE data/faktura ( ; CREATE TABLE data/faktura ( ; ino int(6) primary key, ; cno char(5) references zakaznik, ; idate date, ; itotal decimal(8,2), ; salesman char(3) not null, ; foreign key salesman tag salesman, ; references prodavac tag salesman, ; check not empty(idate) ) unique – znamená opravdu jedinečný (kandidátní klíč) – provádí se kontrola unique – znamená opravdu jedinečný (kandidátní klíč) – provádí se kontrola vazba od závislé tabulky k hlavní tabulce, tj definujeme cizí klíč vazba od závislé tabulky k hlavní tabulce, tj definujeme cizí klíč

10 10 VFP - vytvoření tabulky v db Pomocí návrháře zadáme Fields: atributy, formát, validaci, komentář Fields: atributy, formát, validaci, komentář Indexes: indexy, Indexes: indexy, UNIQUE – neprovádí se kontrola UNIQUE – neprovádí se kontrola Table: tabulka: Table: tabulka: dlouhé jméno dlouhé jméno record validation a případné chyb. hlášení record validation a případné chyb. hlášení Trigery Trigery RI - insert, update, delete RI - insert, update, delete komentář tabulky komentář tabulky

11 11 VFP - vytvoření trvalé vazby v Database Designeru (DD) Dočasná vazba : Dočasná vazba : hlavní tabulka nemusí mít index, závislá ano hlavní tabulka nemusí mít index, závislá ano implicitní příkaz seek (nenajde -> eof()=T, found(()=F) implicitní příkaz seek (nenajde -> eof()=T, found(()=F) Trvalá vazba (persistent relationship): Trvalá vazba (persistent relationship): vazba oběma směry (obě tabulky musí mít daný index) vazba oběma směry (obě tabulky musí mít daný index) navazuje se přes indexy z hl. do závislé tabulky (v DD) navazuje se přes indexy z hl. do závislé tabulky (v DD) kandid. nebo prim -> pravidelný (regular) vazba1:N kandid. nebo prim -> pravidelný (regular) vazba1:N kandid. nebo prim -> kandid. nebo prim.1:1 kandid. nebo prim -> kandid. nebo prim.1:1 Následující příkaz přidá trvalou vazbu 1:N mezi tabulkami customer a orders, založenou na primárním klíči cust_id v tabulce customer a novém cizím klíči cust_id v tabulce orders : ALTER TABLE orders; ADD FOREIGN KEY cust_id TAG ; ADD FOREIGN KEY cust_id TAG ; cust_id REFERENCES customer cust_id REFERENCES customer

12 12 Referenční integrita Každý dceřiný záznam musí mít odpovídajícího rodiče Každý dceřiný záznam musí mít odpovídajícího rodiče Ověřovací pravidlo u Salesmana - : Ověřovací pravidlo u Salesmana - : seek(ono, ’Offices’) najde se – vrátí True Operace – insert, update,delete klíče: Operace – insert, update,delete klíče: restrikce, kaskáda, ignorace restrikce, kaskáda, ignorace Procedurální RI – definicí spouští (trigerů) Referential Integrity Builder

13 13 Uložené procedury jsou uloženy v databázi ve zkompilované formě jsou uloženy v databázi ve zkompilované formě načtou se do paměti v okamžiku otevření db načtou se do paměti v okamžiku otevření db aktualizace na jednom místě aktualizace na jednom místě využívají se pro kód spouští (trigerů) využívají se pro kód spouští (trigerů) Příkazy: Příkazy: Modify, list procedures Modify, list procedures Append procedures from soubor Append procedures from soubor Příklad TASTRADE (VisualFoxPro80\Samples\Tastrade\Data – rutina NewId() Příklad TASTRADE (VisualFoxPro80\Samples\Tastrade\Data – rutina NewId()


Stáhnout ppt "Visual Fox Pro Visual Fox Pro Databáze výhody a nevýhody Ing. Emilie Šeptáková."

Podobné prezentace


Reklamy Google