• Přehled softwarových nástrojů pro tvorbu databází. Vývoj aplikací a databází: společný základ

    Katedra aplikované informatiky

    Vysvětlující poznámka k seminární práce

    podle disciplíny:

    "Databáze"

    "Rozvoj Databáze a klientská aplikace

    Kaluga 2009


    Úvod

    1. Vyjádření problému

    2. Navrhněte, vytvořte a spravujte databázi

    3.Technologická uživatelská příručka

    Závěr

    Bibliografie


    Úvod

    Cílem mé práce v kurzu je vybudování databáze a studium základních prvků jazyka SQL a také získání praktických dovedností při tvorbě jednoduché databáze.

    Relevantnost práce v kurzu je definována jako potřeba vytvářet a navrhovat databáze.

    V dnešním světě existuje široká škála databází. Bez nichž by věk informačních technologií nemohl existovat a postupně se rozvíjet. Moderní svět se neobejde bez strukturovaných a tříděných informací, databáze vám to umožňují. Databáze jsou nezbytné pro mnoho oblastí lidské činnosti, ať už jde o bankovnictví, nakupování potravin nebo sledování výdajů domácnosti.

    Databáze se nacházejí na každém kroku. Téměř každý systém je dobře postavená databáze, například známý „konzultant +“ nebo účtování jedné daně na ministerstvu daní a poplatků.

    Moje databáze je navržena tak, aby automatizovala operace, získávala spolehlivé a aktuální informace.

    Cíle práce v kurzu jsou následující:

    Implementujte databázi;

    implementovat uživatelské rozhraní;

    Kompilovat zprávy;

    V současné době mnoho moderní jazyky programovací jazyky podporují programování databází, s pomocí takových jazyků můžete vytvořit potřebnou databázi, ať už je jednoduchá nebo super složitá.


    1. Vyjádření problému

    Vyvinutá databáze melounů se skládá z několika „úrovní“. Nejabstraktnější „vrstvou“ je datové schéma. Na této úrovni se přímo zobrazují vztahy mezi tabulkami.

    V této práci na kurzu jsou úkoly:

    Sestavení fyzického modelu na počítači (pomocí Erwina);

    Definice vazeb, datové typy;

    Vývoj pohodlného uživatelského rozhraní;

    Tvorba žádostí, formulářů;

    Tvorba reportů (na vyžádání);

    Vytvoření formuláře hlavního tlačítka;

    V mé práci na kurzu byl vytvořen fragment systému účetnictví zaměstnanců, v souvislosti s tím se účetnictví skládá z následujících operací:

    V mé práci na kurzu byl vytvořen fragment systému účetnictví zboží, v souvislosti s tím se účetnictví skládá z následujících operací:

    Účetnictví zboží;

    Účtování zboží podle skupin;

    Účtování zboží šekem;

    Tento systém je určen k automatizaci těchto operací, získávání spolehlivých a včasných informací, generování výstupních dokumentů.

    2. Návrh, tvorba a správa databáze

    Databáze má 4 tabulky.

    1) Tabulka Skupina produktů, obsahuje 2 sloupce Číslo skupiny produktů a Název skupiny produktů.


    2) Tabulka Produkt obsahuje 4 sloupce Číslo_produktu, Název produktu, Cena, Číslo skupiny produktů.


    3) Kontrolní tabulka, obsahuje 2 sloupce: Check_number, Date.

    4) Tabulka Zboží podle příjmu, obsahuje 3 sloupce: Číslo položky, Číslo účtenky. Množství.

    Pro usnadnění práce s databází bylo vytvořeno několik formulářů.

    Účel formulářů je velmi rozmanitý, formuláře lze použít k zobrazení dotazů, tabulek, pohodlí zápisu do tabulek atd.

    Formuláře pro žádosti.

    1) Poptávkový formulář 1 (viz obr. 1)

    Zboží je nutné odebrat na konkrétní kontrolní číslo. Tento formulář představuje uživatelsky přívětivé rozhraní pro zadávání informací a pohodlné prohlížení zpráva.


    Rýže. 1 Formulář žádosti 1

    Například. Zadejte kontrolní číslo do textového pole - 7 a klikněte na tlačítko - Zobrazit zprávu (viz obr. 2)


    Rýže. 2 Nahlásit provoz1

    2) Formulář žádosti2

    Zboží je nutné vystavit dle data. Tento formulář poskytuje pohodlné rozhraní pro zadávání informací a také pohodlné prohlížení sestavy.


    Rýže. 3 Formulář žádosti2

    Například. Do textového pole zadejte datum - 11/12/08 a klikněte na tlačítko - Zobrazit zprávu. (Viz obr. 4)


    Rýže. 4 Operace dotazu2


    Organizace zadávání dat do tabulek probíhá prostřednictvím příslušných formulářů. Pro pohodlí byl vytvořen formulář hlavního tlačítka. (Viz obr. 5)

    Tento formulář vypadá takto:


    Rýže. 5 Tlačítkový formulář

    Zde je hlavní menu. Každé z tlačítek poskytuje přístup k reportům, po stisknutí lze reporty velmi jednoduše prohlížet.

    Podnabídka Tabulky obsahuje tabulky pro zadávání informací v pohodlné formě.

    Datové schéma. (Viz obrázek 6


    Rýže. 6 Datové schéma

    Datové schéma bylo vytvořeno pomocí programu Erwin.

    3. Technologická uživatelská příručka

    Například:

    - Představujeme nový produkt.

    Abyste mohli zavést nový produkt, musíte provést následující kroky (viz obr. 7):

    Přejděte do formuláře hlavního tlačítka -> klikněte na tlačítko tabulka -> klikněte na tlačítko produktu -> zadejte název produktu, jeho cenu a vyberte, do které skupiny produktů patří.


    Rýže. 7 Zadání nového zaměstnance

    Pokud je v seznamu skupin produktů požadovaná skupina jinak jej zadáme ručně

    Stiskněte tlačítko Skupina produktů -> a zadejte novou skupinu produktů. (Viz obr. 8)



    Obr. 8. Vytvoření nové skupiny produktů.


    -> také vybere číslo účtenky, pro kterou tento produkt prochází -> zadejte množství tohoto produktu. (Viz obrázek 10)



    Závěr

    Cíle práce v kurzu jsou plně splněny. Pro evidenci zboží byla vytvořena databáze. Práce v kurzu byla vytvořena v MS Access. Datové schéma (fyzikální model) bylo vytvořeno v programu Erwin. Uživatelsky přívětivé uživatelské rozhraní je také implementováno pro bezpečné a snadné zadávání informací. V této práci jsou také dokončeny úkoly, které byly zadány na začátku práce na kurzu, jsou vyřešeny všechny problémy a jejich řešení je možné zobrazit přímo v práci kurzu.

    Po vypracování této semestrální práce jsem si uvědomil, že Microsoft Access DBMS je výkonný a šikovný nástroj k vytváření databází. Grafické rozhraní pro více oken, které mi umožňuje interaktivně vytvářet tabulky, formuláře, dotazy, sestavy. Speciální zařízení, která automatizují práci při vytváření a údržbě databáze (Wizards and Constructors, Assistants, etc.) značně zjednodušují celý proces a zpřístupňují program všem.

    Věřím, že v mé profesi se mi takové dovednosti, i ty základní, budou časem velmi hodit.

    Velmi zajímavá a pohodlná byla také práce v MS Access, tvorba formulářů, práce s nápovědou, prohlížení a studium knih o databázích a zejména MS Access. Bezpochyby se mi podařilo seznámit se s tak úžasným programem jako je Erwin, který pomáhá rychle a lépe pochopit tvorbu databází. Moderní databáze jsou samozřejmě každým dnem větší a větší, vyhovují potřebám uživatelů, proto vyvstává úkol, jak takové databáze vytvořit, jak je spravovat... Po přečtení a rozboru této semestrální práce můžete nepochybně získat základní dovednosti při vytváření databázových dat.

    Bibliografie

    1. Microsoft Access 2000. Krok za krokem: Prakt. příspěvek / Per. z angličtiny.

    M.: Nakladatelství ECOM, 2002. - 352 s.: ilustrace.

    2. Kurz: Office Access 2003. - Petrohrad: Petr, 2004. - 464 s.: nemoc.

    3. Databáze. Návrh, realizace a podpora. Teorie a

    praxe. 3. vydání. : Per. z angličtiny. - M .: Nakladatelství "William",

    2003. - 1440 s. : nemocný. - Paral. sýkorka Angličtina

    Delphi je vývojové prostředí využívající programovací jazyk Delphi (od verze 7 se jazyk v prostředí nazývá Delphi, dříve Object Pascal), vyvinuté společností Borland a původně implementované v jejím balíku Borland Delphi, od kterého získalo své současné jméno v roce 2003. Object Pascal je v podstatě nástupcem jazyka Pascal s objektově orientovanými rozšířeními.

    Delphi je nejlepší nástroj pro tvorbu databázových aplikací. Optimální, protože podporuje technologii vizuálního vývoje, která může výrazně zkrátit dobu vývoje při zachování dobrá kvalita a spolehlivost softwarového produktu. Delphi ve struktuře jazyka umožňuje vyhnout se skrytým chybám.

    Vlastnosti rodiny Delphi 7:

    *Prostředí pro rychlý vývoj aplikací, které integruje simulační nástroje pro vývoj a nasazení aplikací elektronického obchodování a webových služeb.

    * Podpora programovacích jazyků pro Win32 (Delphi a C/C++) a pro .NET (Delphi a C#) v jediném vývojovém prostředí, což usnadňuje údržbu a vytváření nových aplikací Win32 a snadnější ovládání technologií .NET;

    *Schopnost jak pro tradiční vývojáře aplikací pro Windows, tak pro vývojáře Java vyvíjet aplikace .NET, aniž by museli opustit použitou sadu nástrojů, při zachování dovedností a s podobnými koncepty programování;

    * Nový systém šablon kódu a další novinky ve vývojovém prostředí kvalitativně zlepšují práci se zdrojovým kódem a zvyšují produktivitu vývoje;

    Microsoft SQL Server 2000 je kompletní nabídka pro analýzu databází a dat pro rychlé vytváření škálovatelných řešení elektronického obchodování, obchodních aplikací a datových skladů.

    Výrazně zkracuje dobu uvedení těchto řešení na trh a zároveň poskytuje škálovatelnost pro splnění nejvyšších požadavků.

    Balíček Delphi je pokračováním Borlandovy řady kompilátorů Pascal. Pascal jako jazyk je velmi jednoduchý a silné zadávání dat pomáhá včas odhalit chyby a umožňuje rychle vytvářet spolehlivé a efektivní programy.

    Vývoj databázových aplikací je jednou z nejžádanějších funkcí programovacího prostředí Delphi. Síla a flexibilita Delphi při práci s databázemi je založena na nízkoúrovňovém jádře - Borland Database Engine (BDE). Jeho rozhraní s aplikační programy nazývané Integrated Database Application Programming Interface (IDAPI). BDE vám umožňuje přistupovat k datům jak tradičním záznamově orientovaným (navigačním) přístupem, tak i množinově orientovaným přístupem používaným v SQL databázových serverech.

    Objektová knihovna obsahuje sadu vizuálních komponent, které výrazně zjednodušují vývoj aplikací pro DBMS s architekturou klient-server. Objekty zapouzdřují nižší úroveň, databázový stroj Borland.

    Existují speciální sady komponent odpovědných za přístup k datům a komponent, které data zobrazují. Komponenty pro přístup k datům umožňují připojit se k databázi, provést výběr, kopírovat data atd.

    Komponenty vizualizace dat umožňují zobrazovat data ve formě tabulek, polí, seznamů. Zobrazovaná data mohou být textová, grafická nebo volná.

    Tabulky jsou uloženy v databázi. Některé DBMS ukládají databázi jako více jednotlivé soubory, což jsou tabulky (v podstatě všechny lokální DBMS), zatímco ostatní se skládají z jednoho souboru, který obsahuje všechny tabulky a indexy (InterBase).

    Databázové objekty v Delphi jsou založeny na SQL a zahrnují plný výkon Borland Database Engine. Delphi také obsahuje Borland SQL Link, takže přístup k Oracle, Sybase, Informix a InterBase DBMS je vysoce efektivní. Delphi navíc obsahuje lokální server Interbase, takže můžete vyvíjet offline aplikace, které lze rozšířit na jakýkoli externí SQL server.

    Škálovatelnost v praxi – stejnou aplikaci lze použít pro lokální i serióznější možnosti klient-server.

    Ačkoli Delphi nemá svůj vlastní formát databázových tabulek, poskytuje výkonnou podporu velký počet různé DBMS - jak lokální (například dBase nebo Paradox), tak průmyslové (například Sybase nebo InterBase).

    Jedním z nejběžnějších scénářů při vývoji aplikací je zobrazení dat z DB na formuláři Windows Forms. Proto s přihlédnutím k procesům, které se při práci s navrhovanými datovými sadami používají Microsoft ( rýže. 5.6.1-2 ), a s ohledem na skutečnost, že prezentované úkoly jsou vzdělávací, v příkladech budeme uvažovat následující procesy:

      Vývoj DB.

      Vývoj aplikací pro Windows:

        tvorba projektů;

        vytvoření uživatelského rozhraní;

        vytvoření databázového datového připojení a jeho zobrazení na formuláři

        editace, kontrola a ukládání dat v aplikaci;

        vývoj aplikačního kódu.

      Provádění aplikace.

      Analýza výsledků aplikace.

    5.6.3.1. Příklad vytvoření projektu "Přeskočení" pro práci s databází "DataBase1"

    Cvičení:

    Do databázeCnázev "Databáze 1“ v určité dny jsou přijímány informace o počtu zameškaných hodin, které mají studenti v každém ze tří předmětů, přičemž jsou k dispozici následující informace:

      datum ověření;

      studijní skupina;

      příjmení studenta;

      rok narození;

      počet zameškaných hodin v informatice;

      zameškané hodiny matematiky

      počet zameškaných hodin ve fyzice.

    Je nutné vytvořit projekt s názvem "Passages", který na základě informací z této databáze vypočítá, ve kterém dni a ve kterém předmětu bylo nejvíce mezer (uveďte i jméno studenta, který má takový počet prospěl). Pokud existuje několik takových dnů, uveďte je všechny.

      Vytvoření databáze "DataBase1"

    Chcete-li vytvořit tabulku s názvem PropClockStudent je nutné vytvořit jeho strukturu, která bude mít podobu znázorněnou na Obr. 5.6.3-1.

    Naplnění tabulky daty lze provést v zobrazení datového listu. Po naplnění tabulky PropClockStudent má podobu znázorněnou na obrázku 5.6.3-2.

      Vývoj aplikace pro Windows pro práci s databází Access "DataBase1"

        Vytvoření nového projektu.

    Vytvořte projekt s názvem Průchodky1.

        Tvorba uživatelského rozhraní.

    Vytvořte uživatelské rozhraní z jediného formuláře, který je znázorněn na Obr. 5.6.3-3.

    Všimněte si, že šablona tabulky PropClockStudent zobrazí se na formuláři až poté připojení datové sady aplikace k databázi DataBase1.

        Připojení datové sady aplikace k databázi Access DataBase1 a jejich zobrazení ve formuláři.

    Postup připojení aplikace VS k datům v databázi Přístup do DBMS lze zjednodušit pomocí Průvodce konfigurací zdroje dat. Po dokončení práce Mistři data v okně Zdroje dat budou dostupné pro přetažení do formulářů.

    Chcete-li vytvořit sadu dat pomocí Průvodce nastavením zdroje dat

    nutné:

      V prvku Data hlavní menu vyberte příkaz Přidejte nový zdroj dat nebo Zobrazit zdroje dat.

    V důsledku toho se ve vývojovém prostředí objeví okno Průvodce nastavením zdrojedata(R je. 5.6.3-4) .

    je nová funkce Visual Studio IDE, která automaticky připraví program na Visual Basic k načtení informací z databáze. Mistr požaduje typ databáze, ke které se má připojit ( místní nebo vzdálená databáze ,webová služba nebo datový objekt, vámi vytvořené), naváže datové připojení a poté v programu vytvoří datovou sadu, která ukládá vybrané tabulky a databázová pole. Konečným výsledkem je, že průvodce otevře okno Zdroj dat a naplní jej vizuální reprezentací každého databázového objektu použitého v programu.

      Po výběru Zdroj dat aplikaceDatabáze a stisknutím klávesy DáleMistržádosti Výběr připojení k databázi(obr. 5.6.3-5).

      V okně Výběr zdroje dat(obr. 5.6.3-6) vyberte DB, který je zdrojem dat - Přístup k databázovému souboru, a poté klikněte na tlačítko Dále.

    Průvodce zobrazí formulář − Přidání připojení, který pomáhá navázat připojení k databázi vytvořením řetězce s názvem spojovací řetězec (obr. 5.6.3-7).

      Řetězec odkazu obsahuje požadované informace VS otevřít a extrahovat informace z databázového souboru. Zahrnuje cestu a název souboru a také další údaje, jako je uživatelské jméno a heslo. Z tohoto důvodu práce s řetězcem odkazu v okně Průvodce konfigurací zdroje dat se provádí velmi pečlivě a při kopírování zdrojových souborů z jednoho místa na druhé byste jej měli chránit před neoprávněným přístupem.

    Tedy v okně Přidání připojení Databasesselect PřístupdatabázeSoubor.

      Zadejte cestu k souboru databáze Databáze1.mdb nebo klikněte na tlačítko Posouzení najít tento soubor , a poté stiskněte tlačítko OK.

      Znovu se zobrazí dialogové okno Přidání připojení(přidat připojení) A obsahující cestu k databázi.

      Klikněte na tlačítko Zkontrolujte připojení. vizuální studio se pokusí otevřít zadaný databázový soubor pomocí řetězce odkazu vygenerovaného průvodcem.

      Klikněte na tlačítko OK zavřete okno se zprávou a potom klepněte na tlačítko OK pro uzavření dialogu Přidání připojení.vizuální studio znovu zobrazí okno Průvodce konfigurací zdroje dat ( rýže. 5.6.3-8)

      Chcete-li zobrazit dokončený řetězec odkazu, klepněte na znaménko plus (+) vedle prvku v dialogovém okně. Spojovací řetězec. Stránka Wizard by měla vypadat podobně jako na obr. 5.6.3-9.

    Propojovací řetězec určuje poskytovatele.

    Mistr zobrazí varování, že byla vybrána nová lokální databáze (obrázek 5.6.3-10)

    Rýže. 5.6.3-10

    Chcete-li se vyhnout vytváření další kopie databáze, klepněte na tlačítko Ne, a poté na tlačítko Dále.

    V čem Průvodce konfigurací zdroje dat se zeptá na ukládání a připojovací řetězec.

    Ve výchozím nastavení je vybrána možnost uložit propojovací řetězec a jako název řetězce v tomto příkladu je " DataBase1ConnectionString". Obvykle byste tento řádek měli uložit do výchozího konfiguračního souboru aplikace, který je k dispozici v okně Průzkumník řešení, jelikož v tomto případě lze při změně umístění databáze tento řádek snadno editovat bez jeho hledání v kódu programu a následné rekompilace aplikace (obr. 5.6.3-11).

    Poté budete vyzváni k výběru podmnožiny databázových objektů, které mají být použity v tomto projektu, jak je znázorněno v okně Průvodce konfigurací zdroje dat znázorněno na Obr. 5.6.3-12.

    Rýže. 5.6.3-12

    vizuální studio umožňuje používat nejen celou databázi, ale i její část nebo kombinaci více různých databází – to se hodí při vytváření aplikací založených na datech.

    Pro náš úkol bychom měli vybrat všechny tabulky (do rámečku umístit odpovídající zaškrtávací políčka).

      Chcete-li aplikaci přidat funkčnost, tedy zobrazení databázových tabulek na formuláři, musíte je přetáhnout z okna Zdroj dat do formuláře.

    Přetahování položek z okna Zdroje dat automaticky přidá do formuláře požadovaný kód k vyplnění sady dat do obsluhy události Form1_Load() (obr. 5.6.3-13).

    Rýže. 5.6.3-13

        Editace, kontrola a ukládání dat v aplikaci

    Jakmile je sada dat naplněna, je běžné přidávat, upravovat nebo odstraňovat data před jejich odesláním zpět do zdroje dat, jiného procesu nebo aplikace. Protože každý záznam v datové sadě je reprezentován objektem DataRow, změny datové sady se provádějí prací na jednotlivých řádcích.

    V Windows Forms architektura vázání dat se zabývá odesíláním změn z ovládacích prvků vázaných na data do datové sady, takže nemusíte explicitně aktualizovat datovou sadu vlastním kódem. Datové sady podporují více verzí datových řádků pro nalezení původních záznamů ve zdroji dat. Před aktualizací zdroje dat možná budete muset ověřit jednotlivé řádky.

    Úprava dat v DataSet je proces správy skutečných dat v jednotlivých objektech, které tvoří datovou sadu. Úprava dat v tabulkách dat je podobná úpravě dat v tabulce v jakékoli databázi – proces může zahrnovat vkládání, aktualizaci a mazání položek tabulky.

    Kromě změny skutečných dat můžete také dotazovat DataTable, abyste vrátili konkrétní řádky dat, jako jsou jednotlivé řádky, konkrétní verze řádků (původní a navrhované), řádky, které se pouze změnily, a řádky obsahující chyby.

        Vývoj aplikačního kódu

    Kód zobrazený na obr. 1 bude spojen s prvním formulářem. 5.6.3-14.

  • Vývoj pro Android
    • tutorial
    • Režim zotavení

    Ahoj všichni! Jmenuji se Oleg a jsem amatérský programátor Android. Milenec, protože v tento moment Vydělávám peníze programováním úplně jiným směrem. A to je koníček, kterému věnuji svůj volný čas. Programátory Androidu bohužel neznám a všechny základní znalosti čerpám buď z knih nebo z internetu. Ve všech těch knihách a článcích na internetu, které čtu, je vyhrazeno velmi málo prostoru pro vytvoření databáze pro aplikaci a ve skutečnosti celý popis spočívá v vytvoření třídy, která je dědicem. SQLiteOpenHelper a následné začlenění kódu SQL do kódu Java. Pokud neuvažujeme, že dostáváme špatně čitelný kód (a pokud se v naší aplikaci objeví více než 10 tabulek, pak je zapamatování všech těchto vztahů mezi tabulkami stále peklo), pak v zásadě můžete žít, samozřejmě, ale nějak vůbec nechci.
    Zapomněl jsem říct to nejdůležitější, můžeme říci, že toto je můj test perem. A tak jsme šli.

    O věčné otázce: proč?

    Proč knihy a články o programování Androidu nepopisují nástroje pro navrhování databázové architektury a jakékoliv vzory pro práci s databázemi ve fázi jejich tvorby, upřímně nevím. Zdálo by se, že přidat do knihy jen pár stránek nebo napsat samostatný článek (jako já teď) je stejně snadné jako loupat hrušky – ale ne. V tomto článku krátce projdu nástroje, které při své práci používám, a podrobněji kód, který má na starosti prvotní vytvoření databáze, která z mého pohledu vypadá čitelněji a pohodlněji.


    Pokud má naše aplikace více než 5 tabulek, pak by nebylo špatné použít nějaký nástroj pro vizuální návrh databázové architektury. Vzhledem k tomu, že je to pro mě koníček, naprosto používám bezplatný nástroj s názvem Oracle SQL Developer Data Modeler (můžete si jej stáhnout).

    Tento program umožňuje vizuálně kreslit tabulky a budovat s nimi vztahy. Tímto přístupem k návrhu se lze vyhnout mnoha chybám v návrhu architektury databáze (to vám říkám již jako profesionální databázový programátor). Vypadá to asi takto:

    Po návrhu samotné architektury přejdeme k nudnější části, která spočívá ve vytvoření sql kódu pro tvorbu tabulek. Na pomoc s tímto problémem již používám nástroj s názvem SQLiteStudio (který lze stáhnout zde).

    Tento nástroj je obdobou známých produktů jako SQL Naviagator, Toad atd. Ale jak název napovídá, je navržen pro práci s SQLite. Umožňuje vizuálně vytvořit databázi a získat DDL kód vytvářených tabulek. Ten mimochodem také umožňuje vytvářet pohledy (View), které můžete v případě potřeby použít i ve své aplikaci. nevím jak správný přístup pomocí zobrazení v programech pro Android, ale v jedné ze svých aplikací jsem je použil.

    Ve skutečnosti už nepoužívám žádné nástroje třetích stran a pak začíná kouzlo Android Studio. Jak jsem psal výše, pokud začneme vkládat SQL kód do Java kódu, tak na výstupu dostaneme špatně čitelný, a tedy špatně rozšiřitelný kód. Proto vyndám všechny příkazy SQL externí soubory které jsou v mém adresáři aktiva. V Android Studiu to vypadá asi takto:


    O adresářích db a data

    Uvnitř adresáře aktiva vytvořil jsem dva adresáře db_01 A data_01. Čísla v názvech adresářů odpovídají číslu verze mé databáze, se kterou pracuji. V adresáři db u mě jsou uloženy SQL skripty tvorby tabulek. A v adresáři data jsou uložena data potřebná pro prvotní naplnění tabulek.


    Nyní se podívejme na kód uvnitř mého DBHelper které používám ve svých projektech. Za prvé, proměnné třídy a konstruktor (zde žádné překvapení):

    Soukromá statická koncovka String TAG = "RoadMap4.DBHelper"; Řetězec mDb = "db_"; String mData = "data_"; Kontext mContext; int mVersion; public DBHelper(kontext kontextu, název řetězce, verze int) ( super(kontext, název, null, verze); mContext = kontext; mVersion = verze; )
    Nyní metoda onCreate a tady jsou věci zajímavé:

    @Override public void onCreate(SQLiteDatabase db) (ArrayList tabulky = getSQLTables(); for (Tabulka řetězců: tabulky)( db.execSQL(tabulka); ) ArrayList > dataSQL = getSQLData(); pro (HashMap hm: dataSQL)( for (tabulka řetězců: hm.keySet())( Log.d(TAG, "vložit do " + tabulka + " " + hm.get(tabulka)); long rowId = db.insert(table, null, hm.get(tabulka)); )))
    Logicky je rozdělena do dvou cyklů, v prvním cyklu získám seznam SQL instrukcí pro vytvoření databáze a následně je provedu, v druhém cyklu již vyplním dříve vytvořené tabulky počátečními údaji. Takže, krok jedna:

    Soukromý ArrayList getSQLTables() (ArrayList tabulky = nový ArrayList<>(); ArrayList soubory = nový ArrayList<>(); AssetManager assetManager = mContext.getAssets(); Řetězec dir = mDb + mVersion; try ( String listFiles = assetManager.list(dir); for (Stringový soubor: listFiles)( files.add(file); ) Collections.sort(files, new QueryFilesComparator()); BufferedReader bufferedReader; Řetězcový dotaz; Řetězcový řádek; for (Řetězcový soubor: soubory)( Log.d(TAG, "soubor db je " + soubor); bufferedReader = new BufferedReader(new InputStreamReader(assetManager.open(dir + "/" + soubor))); query = ""; while ((line = bufferedReader.readLine()) != null)( query = query + line; ) bufferedReader.close(); tables.add(query); ) ) catch (IOException e) ( e.printStackTrace(); ) návratové tabulky; )
    Zde je vše docela jednoduché, pouze čteme obsah souborů a zřetězujeme obsah každého souboru do prvku pole. Upozorňujeme, že třídím seznam souborů, protože tabulky mohou mít cizí klíče, což znamená, že tabulky musí být vytvořeny v určitém pořadí. V názvu souboru používám číslování a s jeho pomocí třídím.

    Soukromá třída QueryFilesComparator implementuje komparátor ( @Override public int Compare(String file1, String file2) ( Integer f2 = Integer.parseInt(file1.substring(0, 2)); Integer f1 = Integer.parseInt(file2.substring(0, 2)); return f2 .compareTo(f1); ) )
    S vyplňováním tabulek je vše zábavnější. Moje tabulky jsou naplněny nejen pevně zakódovanými hodnotami, ale také hodnotami ze zdrojů a klíčů UUID (doufám, že se někdy dostanu k síťové verzi svého programu, aby moji uživatelé mohli pracovat se sdílenými daty). Samotná struktura souborů s počátečními daty vypadá takto:


    Navzdory skutečnosti, že moje soubory mají příponu sql, uvnitř není žádný kód sql, ale tato věc:

    Priority
    pri_id:UUID:UUID

    pri_name:string:normal
    pri_color:color:colorGreen
    pri_default:int:1
    priority
    pri_id:UUID:UUID
    pri_object:string:object_task
    pri_name:string:hold
    pri_color:color:colorBlue
    pri_default:int:0
    priority
    pri_id:UUID:UUID
    pri_object:string:object_task
    pri_name:string:důležité
    pri_color:color:colorČervená
    pri_default:int:0
    priority
    pri_id:UUID:UUID

    pri_name:string:normal
    pri_color:color:colorGreen
    pri_default:int:1
    priority
    pri_id:UUID:UUID
    pri_object:string:object_project
    pri_name:string:hold
    pri_color:color:colorBlue
    pri_default:int:0
    priority
    pri_id:UUID:UUID
    pri_object:string:object_project
    pri_name:string:důležité
    pri_color:color:colorČervená
    pri_default:int:0

    Struktura souboru je taková: Zavolám funkci rozdělit(":") ve vztahu k řádku a pokud dostanu, že jeho velikost je 1, tak je to název tabulky, kam se mají data zapisovat. Jinak jsou to samá data. První pole je název pole v tabulce. Druhé pole je typ, kterým určuji, co potřebuji napsat právě do tohoto pole. Pokud je to UUID, musím vygenerovat jedinečnou hodnotu UUID. Pokud pro mě řetězec znamená, je nutné vytáhnout hodnotu řetězce ze zdrojů. Pokud barva, pak znovu musíte extrahovat kód barvy ze zdrojů. Pokud je int nebo text, pak jen převedu daná hodnota to int nebo String bez jakýchkoli gest. Samotný kód vypadá takto:

    Soukromý ArrayList > getSQLData() ( ArrayList > data = nový ArrayList<>(); ArrayList soubory = nový ArrayList<>(); AssetManager assetManager = mContext.getAssets(); String dir = mData + mVersion; try ( String listFiles = assetManager.list(dir); for (String file: listFiles)( files.add(file); ) Collections.sort(files, new QueryFilesComparator()); BufferedReader bufferedReader; Řetězcový řádek; int oddělovač = 0 ; ContentValues ​​​​cv = null; Pole řetězce; String nameTable = null; String packageName = mContext.getPackageName(); booleovský příznak = false; HashMap hm; for (String file: files)( Log.d(TAG, "file db is " + file); bufferedReader = new BufferedReader(new InputStreamReader(assetManager.open(dir + "/" + file))); while ((řádek = bufferedReader.readLine()) != null)( pole = line.trim().split(":"); if (fields.length == 1)( if (příznak == true)( hm = nová HashMap<>(); hm put(nameTable, cv); data.add(hm); ) // název tabulky názevTabulka = line.trim(); cv = new ContentValues(); pokračovat; ) else ( if (fields.equals("UUID"))( cv.put(fields, UUID.randomUUID().toString()); ) else if (fields.equals("color") || fields.equals( "string"))( int resId = mContext.getResources().getIdentifier(pole, pole, název_balíčku); Log.d(TAG, pole + " " + resId); přepínač (pole)( case "color": cv. put(fields, resId); break; case "string": cv.put(fields, mContext.getString(resId)); break; default: break; ) ) else if (fields.equals("text"))( cv .put(pole, pole); ) else if (pole.equals("int"))( cv.put(pole, Integer.parseInt(pole)); ) ) flag = true; ) bufferedReader.close(); ) ) catch (IOException e) ( e.printStackTrace(); ) return data; )

    Odeslat svou dobrou práci do znalostní báze je jednoduché. Použijte níže uvedený formulář

    Dobrá práce na web">

    Studenti, postgraduální studenti, mladí vědci, kteří využívají znalostní základnu ve svém studiu a práci, vám budou velmi vděční.

    Vloženo na http://www.allbest.ru/

    Úvod

    3. Modely organizace dat

    4. Relační databáze

    6. Infoologický model

    7. Logický model

    8. Struktura tabulek

    12. Vytvořte tabulky

    16. Vytvářejte zprávy

    17. Výpis programu

    Závěr

    Bibliografie

    Úvod

    Aby mohl činit správná a efektivní rozhodnutí ve výrobních činnostech, v ekonomickém řízení a v politice, musí být moderní specialista schopen přijímat, shromažďovat, ukládat a zpracovávat data pomocí počítačů a komunikací a prezentovat výsledek ve formě vizuálních dokumentů. Proto je tak důležité umět s databázemi pracovat.

    Databáze je organizovaná struktura pro ukládání informací. Moderní databáze ukládají nejen data, ale také informace.

    O Delphi se mluví jako o prostředí pro rychlý vývoj aplikací. Jedná se o technologii vizuálního programování, tzn. uživatel sestaví svůj budoucí program a výsledky své práce vidí ještě před spuštěním samotného programu. V zásadě je proces psaní žádosti rozdělen na dvě části. První - programátor umístí potřebné prvky na okna svého programu, pozice, sady správné rozměry, mění vlastnosti. Druhým je vlastně psaní programového kódu, popis vlastností prvků, které jsou dostupné pouze za běhu aplikace, popis reakcí na událost zobrazení okna, kliknutí na tlačítko atd. Nastavení libovolných vlastností prvku vyvíjené aplikace není vůbec nutné psát masivní textové řádky, stačí tuto vlastnost změnit v Object Inspectoru (tzv. sledování vlastností vybraného prvku). Tato změna automaticky přidá nebo upraví kód programu.

    To je velké plus v technologii vizuálního programování. Vytvoření nebo úprava vašeho software, uživatel, který nezná nebo nevěnuje pozornost některým vlastnostem programového prvku, ale používá pouze ty nezbytné, napíše plně hotový funkční produkt, který někdy jedná za stejných podmínek ve složitosti jako ty, které byly napsány v nevizuálním editoru.

    Stojíme před úkolem sestavit databázi, která by obsahovala údaje o učivu vzdělávací proces. Po naplnění databáze je třeba provést selektivní analýzu pomocí dotazů SQL.

    základní program infologických tabulek

    1. Obecné požadavky na vývoj databázových aplikací

    Databáze musí obsahovat

    A. Tabulky pro ukládání dat, minimálně 3 tabulky. Každá tabulka musí obsahovat alespoň 10 položek.

    b. Formuláře pro snadné prohlížení, zadávání, editaci a vyhledávání dat, generování a zobrazování dotazů. Formulář by měl obsahovat vysvětlení, rady. Při vyplňování polí formuláře pro známé sady hodnot použijte možnost vybrat hodnoty ze seznamu. Formuláře by měly být propojeny, kdykoli je to možné, aby se optimalizovala navigace příspěvků. Formulář by měl obsahovat co nejvíce informací pro uživatele. Zajistěte řešení vznikajících sémantických chyb.

    C. Sestavy obsahující všechny tabulky, formuláře, dotazy

    d. Nabídka pro přístup k různým databázovým objektům

    E. Nápověda obsahující úplný popis úkolu

    2. Pro programování databází je nutné použít doplňkovou literaturu o jazyku SQL, programovacím systému DELPHI.

    3. Seznam a metody samostatně řešených úloh

    1. Analýza problému a tématické oblasti.

    2. Infoologický design, zdůvodnění informačních objektů, domén, atributů, odkazů, sestavení infologického modelu.

    3. Logický návrh, konstrukce a zdůvodnění základních vztahů, normalizace.

    4. Návrh SQL dotazů.

    5. Programování struktury a obecných funkcí v databázi.

    6. Návrh databáze v softwarovém prostředí.

    7. Vývoj programového rozhraní.

    8. Vytvoření vysvětlující poznámky.

    4. Kritéria pro hodnocení získaných kompetencí v semestrální práci

    Kritéria vyplňuje vyučující při obhajobě práce, uvedená v tabulce 1. Na základě průměrné známky je seminární práce hodnocena známkou.

    Tabulka 1. Hodnocení kompetencí

    Název kompetencí

    Předmět hodnocení

    Pochopte požadavky a dodržujte je

    Získané výsledky (DB) (objem, struktura, splnění úkolu)

    Psaná komunikace

    Kvalita prezentace ve vysvětlivce, přehlednost, objemová struktura, dodržení zadání.

    Znát a používat prvky programovacího systému DELPHI

    Komponenty databázové aplikace, odpovědi na otázky týkající se implementace databáze

    Znát a aplikovat prvky databázové technologie

    Odpovědi na otázky týkající se designu, případně ve formě testu

    Pochopit potřeby aplikace databázové technologie

    Uvedení vysvětlující poznámky

    Plánování práce, organizace práce

    Doba obratu

    Řešit problémy samostatně

    Seznam a metody samostatného řešení úloh

    Ústní komunikace

    Ochrana veřejných databází

    Schopnost analyzovat, syntetizovat

    Infologický, logický databázový model

    Závazek ke kvalitním výsledkům

    Kvalita odvedené práce, ergonomické ukazatele, kvalita fungování.

    Schopnost generovat nové nápady

    kvalita rozhraní, doplňkové funkce DB není součástí úkolu.

    Schopnost spravovat (vyhledávat) informace

    Počet nalezených a použitých informačních zdrojů v kurzu, počet konzultantů.

    2. Základní pojmy a klasifikace systémů správy databází

    Databáze (DB) je soubor strukturovaných dat uložených v paměti počítačového systému a odrážející stav objektů a jejich vztahy v uvažované oblasti.

    Logická struktura dat uložených v databázi se nazývá model reprezentace dat. Mezi hlavní modely prezentace dat (datové modely) patří hierarchické, síťové, relační.

    Systém správy databází (DBMS) je sada jazyků a softwarové nástroje pro vytváření, údržbu a sdílení DB mnoha uživateli. RDBMS se obvykle rozlišují podle použitého datového modelu. Takže DBMS založené na použití relačního datového modelu se nazývají relační DBMS.

    Pro práci s databází často postačí nástroje DBMS. Pokud je však potřeba zajistit pohodlí práce s databází pro nezkušené uživatele nebo uživatelům nevyhovuje rozhraní DBMS, lze aplikace vyvíjet. Jejich tvorba vyžaduje programování. Aplikace je program nebo soubor programů, které automatizují řešení některých aplikovaný úkol. Aplikace lze vytvářet v prostředí DBMS nebo mimo něj – pomocí programovacího systému, který využívá nástroje pro přístup k databázi, například Delphi nebo C++ Вuildeg. Aplikace vyvinuté v prostředí DBMS jsou často označovány jako aplikace DBMS, zatímco aplikace vyvinuté mimo DBMS jsou často označovány jako externí aplikace.

    Datový slovník je databázový subsystém určený pro centralizované ukládání informací o datových strukturách, vztazích mezi databázovými soubory, datových typech a prezentačních formátech, vlastnictví dat uživateli, bezpečnostních a přístupových kódech atd.

    Informační systémy založené na využití databáze obvykle fungují v architektuře klient-server. V tomto případě je databáze umístěna na počítači serveru a je sdílena.

    Server konkrétního zdroje v počítačová síť Počítač (program), který tento zdroj spravuje, se nazývá klient – ​​počítač (program), který tento zdroj využívá. Jako zdroj počítačové sítě mohou fungovat například databáze, soubory, tiskové služby, poštovní služby.

    Důstojnost organizace informační systém na architektuře klient-server je úspěšnou kombinací centralizovaného úložiště, údržby a kolektivního přístupu ke společným firemním informacím s individuální prací uživatelů.

    Podle základního principu architektury klient-server jsou data zpracovávána pouze na serveru. Uživatel nebo aplikace tvoří dotazy, které přicházejí na databázový server ve formě příkazů SQL. Databázový server zajišťuje vyhledávání a extrakci potřebných dat, která jsou následně přenesena do počítače uživatele. Výhodou tohoto přístupu oproti předchozím je znatelně menší množství přenášených dat.

    Existují následující typy DBMS:

    * plně vybavený DBMS;

    * databázové servery;

    * nástroje pro vývoj programů pro práci s databází.

    Plně vybavené DBMS jsou tradiční DBMS. Patří mezi ně dBase IV, Microsoft Access, Microsoft FoxPro atd.

    Databázové servery jsou určeny k organizaci center zpracování dat v počítačových sítích. Databázové servery zajišťují zpracování požadavků klientských programů, obvykle pomocí SQL příkazů. Příklady databázových serverů jsou: Microsoft SQL Server, Inter Base atd.

    V roli klientských programů, v obecném případě, DBMS, tabulky, textové procesory, programy E-mailem atd.

    Nástroje pro vývoj databázových programů lze použít k vytvoření následujících programů:

    * klientské programy;

    * databázové servery a jejich jednotlivé komponenty;

    * vlastní aplikace.

    Podle charakteru použití DBMS se dělí na víceuživatelské (průmyslové) a lokální (osobní).

    Průmyslové, DBMS jsou softwarovým základem pro vývoj automatizované systémy správa velkých hospodářských objektů. Průmyslové DBMS musí splňovat následující požadavky:

    * možnost organizace společné paralelní práce mnoha uživatelů;

    * škálovatelnost;

    * přenositelnost na různé hardwarové a softwarové platformy;

    * stabilita ve vztahu k poruchám různého druhu, včetně přítomnosti víceúrovňového zálohovacího systému pro uložené informace;

    * Zajištění bezpečnosti uložených dat a propracovaný strukturovaný systém přístupu k nim.

    Personal DBMS je úkolově orientovaný software místní uživatel nebo malá skupina uživatelů a jsou určeny k použití na osobní počítač. To vysvětluje jejich druhé jméno - desktop. Definující vlastnosti desktopových systémů jsou:

    * relativní snadnost ovládání, což vám umožní vytvořit funkční vlastní aplikace;

    * relativně omezené požadavky na hardwarové zdroje.

    Podle použitého datového modelu se DBMS dělí na hierarchické, síťové, relační, objektově orientované atd. Některé DBMS mohou současně podporovat více datových modelů.

    Pro práci s daty uloženými v databázi se používají následující typy jazyků:

    *jazyk popisu dat -- neprocedurální jazyk na vysoké úrovni
    deklarativní typ, určený k popisu logického
    datové struktury

    * jazyk pro manipulaci s daty -- soubor struktur, které zajišťují provádění základních operací pro práci s daty: zadávání, úpravy a výběr dat na vyžádání.

    Pojmenované jazyky v různých DBMS se mohou lišit. Nejpoužívanější jsou dva standardizované jazyky: QBE -- vzorovaný dotazovací jazyk a SQL -- strukturovaný dotazovací jazyk QBE má v podstatě vlastnosti jazyka pro manipulaci s daty, SQL kombinuje vlastnosti obou typů jazyků.

    DBMS implementuje následující základní nízkoúrovňové funkce:

    * správa dat během externí paměť;

    * Správa vyrovnávací paměti RAM;

    * řízení transakcí;

    * protokolování změn v databázi;

    * Zajištění integrity a bezpečnosti databáze.

    Implementace funkce správy dat v externí paměti zajišťuje organizaci správy zdrojů v souborovém systému OS.

    Potřeba ukládání dat do vyrovnávací paměti je způsobena skutečností, že množství paměti RAM je menší než množství externí paměti. Vyrovnávací paměti jsou oblasti paměti RAM navržené pro urychlení výměny mezi externími a RAM. Buffery dočasně ukládají databázové fragmenty, data, ze kterých se předpokládá použití při přístupu do DBMS nebo je plánováno po zpracování zapsat do databáze.

    Transakční mechanismus se používá v DBMS k udržení integrity dat v databázi. Transakce je nějaká nedělitelná sekvence operací s databázovými daty, kterou DBMS sleduje od začátku do konce. Pokud z nějakého důvodu (poruchy a poruchy zařízení, chyby v software, včetně aplikace) transakce zůstane neúplná, poté je zrušena.

    Transakce mají tři hlavní vlastnosti:

    * atomicita (všechny operace zahrnuté v transakci jsou provedeny nebo žádné);

    * serializovatelnost (nedochází k vzájemnému ovlivňování současně prováděných transakcí);

    * trvanlivost (ani pád systému nevede ke ztrátě výsledků potvrzené transakce).

    Příkladem transakce je operace převodu peněz z jednoho účtu na druhý v bankovním systému. Nejprve jsou peníze vybrány z jednoho účtu a poté jsou připsány na jiný účet. Pokud alespoň jedna z akcí nebude úspěšně dokončena, výsledek operace bude nesprávný a rovnováha operace bude narušena.

    Protokolování změn provádí DBMS, aby byla zajištěna spolehlivost ukládání dat v databázi v případě selhání hardwaru a softwaru.

    Zajištění integrity databáze je nezbytnou podmínkou pro úspěšné fungování databáze, zvláště když tomu tak je použití sítě. Integrita databáze je vlastností databáze, což znamená, že obsahuje úplné, konzistentní a přiměřeně odrážející informace o předmětné oblasti. Integrita stavu databáze je popsána pomocí integritních omezení ve formě podmínek, které musí splňovat data uložená v databázi.

    Bezpečnost je v DBMS dosahována šifrováním dat, ochranou heslem, podporou úrovní přístupu k databázi a jejím jednotlivým prvkům (tabulkám, formulářům, sestavám atd.).

    3. Modely organizace dat

    V hierarchickém modelu jsou objekty entit a doménové vztahy reprezentovány datovými sadami, které mají stromovou (hierarchickou) strukturu. Hierarchický datový model byl historicky první. Na jeho základě byly koncem 60. - začátkem 70. let vyvinuty první profesionální DBMS.

    Omezení integrity v hierarchickém modelu se soustředí na referenční integritu mezi předky a potomky, přičemž platí základní pravidlo, že žádné dítě nemůže existovat bez rodiče.

    Datový model sítě umožňuje zobrazit různé vztahy mezi datovými prvky ve formě libovolného grafu. Síťová databáze se skládá ze sady záznamů a sady odpovídajících odkazů. Neexistují žádná zvláštní omezení pro vytvoření spojení. Pokud by v hierarchických strukturách mohl mít záznam potomka pouze jeden záznam předka, pak v síťovém datovém modelu může mít záznam potomka libovolný počet záznamů předka.

    Výhodou síťového datového middelu je možnost jeho efektivní implementace. Ve srovnání s hierarchickým modelem poskytuje síťový model více příležitostí z hlediska přípustnosti vytváření libovolných vazeb.

    Nevýhodou síťového datového modelu je vysoká složitost a rigidita databázového schématu postaveného na jeho základě a také obtížnost jeho pochopení. běžný uživatel. Kromě toho je v síťovém datovém modelu oslabena kontrola integrity vazeb kvůli přípustnosti vytváření libovolných vazeb mezi záznamy.

    Systémy založené na síťovém modelu se v praxi příliš nepoužívají.

    Relační datový model navrhl zaměstnanec IBM Edgar Codd a je založen na konceptu vztahu.

    Relace je množina prvků nazývaných n-tice. Vizuální reprezentací vztahu je dvourozměrná tabulka.

    Pomocí jedné tabulky je vhodné popsat nejjednodušší forma vztahy mezi daty, a to: rozdělení jednoho objektu, o kterém jsou informace uloženy v tabulce, na mnoho dílčích objektů, z nichž každý odpovídá řádku nebo záznamu v tabulce.

    Hlavní nevýhody relačního modelu jsou následující: nedostatek standardní prostředky identifikaci jednotlivých záznamů a složitost popisu hierarchických a síťových vztahů.

    4. Relační databáze

    Relační datový model (RDM) určité předmětné oblasti je soubor vztahů, které se v čase mění. Sada vztahů umožňuje při vytváření informačního systému ukládat data o objektech předmětné oblasti a modelovat vztahy mezi nimi. Termíny RMD jsou uvedeny v tabulce. 4.1

    Tabulka 4.1. Podmínky relačního modelu

    termín relační model

    Ekvivalent

    přístup

    schéma vztahu

    Řádek záhlaví sloupce tabulky (záhlaví tabulky)

    Řádek tabulky, záznam

    Podstata

    Popis vlastností objektu

    Sloupec, pole

    Sada povolených hodnot

    atribut

    primární klíč

    Jedinečný identifikátor

    mohutnost

    Počet řádků

    Počet sloupců

    Relační databáze je datový sklad obsahující sadu dvourozměrných tabulek. Údaje v tabulkách musí splňovat následující zásady:

    1. Hodnoty atributu musí být atomické (jinými slovy,
    každá hodnota obsažená v průsečíku řádku a sloupce,
    by neměly být rozděleny do více hodnot).

    2. Hodnoty každého atributu musí být stejného typu.

    3. Každý záznam v tabulce je jedinečný.

    4. Každé pole má jedinečný název.

    5. Pořadí polí a záznamů v tabulce není podstatné.

    Relace je nejdůležitější pojem a je to dvourozměrná tabulka obsahující některá data.

    Entita je objekt jakékoli povahy, o kterém jsou data uložena v databázi. Data entity jsou uložena ve vztahu.

    Atributy jsou vlastnosti, které charakterizují entitu. Ve struktuře tabulky je každý atribut pojmenován a tomu odpovídá záhlaví některého sloupce tabulky.

    Klíčem vztahu je soubor jeho atributů, které jednoznačně identifikují každou z n-tic vztahu. Jinými slovy, množina atributů K, která je klíčem vztahu, má vlastnost jedinečnosti. Další vlastností klíče není redundance. To znamená, že žádná ze správných podmnožin množiny K nemá vlastnost jedinečnosti.

    Každý vztah má vždy kombinaci atributů, které mohou sloužit jako klíč.

    Existují případy, kdy má relace několik kombinací atributů, z nichž každá jednoznačně identifikuje všechny n-tice relace. Všechny tyto kombinace atributů jsou možné relační klíče. Jakýkoli z možných klíčů lze vybrat jako primární.

    Klíče se obvykle používají k dosažení následujících cílů:

    Vyloučení duplikace hodnot v klíčových atributech (ostatní atributy se neberou v úvahu);

    Objednávání n-tic. Hodnoty všech klíčových atributů je možné seřadit vzestupně nebo sestupně, stejně jako smíšené řazení (podle jednoho - vzestupně a podle ostatních - sestupně);

    Tabulka propojující organizace.

    Důležitý je koncept cizího klíče. Cizí klíč lze definovat jako sadu atributů jedné relace R2, jejíž hodnoty se musí shodovat s hodnotami možného klíče jiné relace R1.

    Atributy relace K2, které tvoří cizí klíč, nejsou pro tento vztah klíčové.

    Cizí klíče vytvářejí vztahy mezi vztahy.

    Návrh databází informačních systémů je poměrně časově náročný úkol. Provádí se na základě formalizace struktury a procesů předmětové oblasti, o níž se předpokládá, že informace bude uložena v databázi. Existují koncepční a schematicko-konstrukční návrhy.

    Koncepční návrh DB IS je do značné míry heuristický proces. Adekvátnost informací vybudovaných v jeho rámci logický model předmětová oblast je ověřována empiricky, v procesu fungování IS.

    Etapy koncepční design:

    * studium předmětu pro vytvoření obecné představy o něm;

    * výběr a analýza funkcí a úkolů vyvíjeného IS;

    * definice hlavních objektů-entit předmětné oblasti
    a vztah mezi nimi;

    * formalizovaná reprezentace předmětné oblasti.

    Při návrhu schématu relační databáze lze rozlišit následující postupy:

    * definice seznamu tabulek a vazeb mezi nimi;

    * definování seznamu polí, typů polí, klíčových polí každé tabulky (schéma tabulky), vytváření vazeb mezi tabulkami pomocí cizích klíčů;

    * nastavení indexování pro pole v tabulkách;

    * vývoj seznamů (slovníků) pro pole s enumerativem
    data;

    * stanovení omezení integrity pro tabulky a vztahy;

    * normalizace tabulek, oprava seznamu tabulek a odkazů. Návrh databáze se provádí na fyzické a logické úrovni. Design zapnutý fyzické úrovni implementovány pomocí DBMS a často automatizované.

    Logický návrh spočívá ve stanovení počtu a struktury tabulek, vypracování databázových dotazů, vykazování dokumentů, vytváření formulářů pro zadávání a editaci dat v databázi atp.

    Jedním z nejdůležitějších úkolů návrhu logické databáze je strukturování dat. Existují následující přístupy k navrhování datových struktur:

    * kombinování informací o objektech entit v rámci jedné tabulky (jedné relace) s následným rozkladem do několika vzájemně souvisejících tabulek na základě postupu pro normalizaci vztahů;

    * formulování znalostí o systému (určení typů výchozích dat a vztahů) a požadavků na zpracování dat, získání hotového databázového schématu nebo i hotového aplikovaného informačního systému pomocí systému CA5E;

    * implementace systémové analýzy a vývoj strukturálních modelů.

    5. Účel a princip fungování SQL

    SQL (často vyslovováno jako „pokračování“, zkratka pro Structured Query Language) znamená Strukturovaný jazykžádosti.

    SQL je nástroj pro zpracování a čtení dat obsažených v počítačové databázi. Jedná se o jazyk, který umožňuje efektivně vytvářet relační databáze a pracovat s nimi.

    Databázový svět se stále více sjednocuje, což vedlo k potřebě vytvořit standardní jazyk, který může fungovat ve velkém množství různých typů. počítačová prostředí. Standardní jazyk umožní uživatelům, kteří znají jednu sadu příkazů, používat je k vytváření, získávání, úpravě a sdělování informací, ať už pracují na osobním počítači, síti pracovní stanice nebo na sálovém počítači. Ve stále více propojeném počítačový svět, uživatel vybavený takovým jazykem má obrovskou výhodu ve využívání a sumarizaci informací z řady zdrojů velkým množstvím způsobů.

    Jak název napovídá, SQL je programovací jazyk, který se používá k organizaci interakce uživatele s databází. Ve skutečnosti SQL funguje pouze s relačními databázemi.

    6. Infoologický model

    Při tvorbě infologického modelu byla analyzována předmětová oblast dané databáze "Kurikula, studované obory směru PMI". Byly vyčleněny 4 objekty: Učivo, Disciplína, Student, Učitel a dále dvě doplňkové tabulky, které propojují studenty a obory a také učitele a obory. Objekt Curriculum má tyto atributy: Rok vytvoření, Číslo učebního plánu. Objekt Disciplína má tyto atributy: Název disciplíny, Kód disciplíny, Číslo učebního plánu, Počet hodin přednášky, Počet hodin praxe, Počet hodin pro laboratorní práce, Hodiny celkem, Počet hodin týdně, Formulář výkazu podle oborů, Studijní semestr. Objekt Sudent má následující atributy: Číslo v hodnotící knize, celé jméno. A objekt Učitel má tyto atributy: Celé jméno, Personální číslo, Oddělení, Pozice, Telefon. Objekty Curriculum a Course spolu souvisí ve vztahu 1:n, objekty Course a Student spolu souvisí ve vztahu 1:n a objekty Course a Teacher spolu souvisí ve vztahu 1:n.

    Při popisu infologického modelu byly použity ER diagramy:

    Obrázek 1

    7. Logický model

    Logický model popisuje pojmy předmětné oblasti, jejich vztah a také omezení dat uložená předmětnou oblastí.

    Logický datový model je počátečním prototypem budoucí databáze. Je postaven z hlediska informačních jednotek, ale bez vazby na konkrétní DBMS. Logický datový model navíc nemusí být vyjádřen pomocí relačního datového modelu.

    Pro vytvoření logického modelu byla každému objektu přiřazena tabulka se specifickou sadou polí. Vzhledem k tomu, že objekty Disciplína a Učitel spolu souvisí ve vztahu 1:n, objeví se další tabulka představující vztah mezi objekty Disciplína a Učitel: Učí.

    Celkem máme 4 objekty, a proto je budou reprezentovat 4 tabulky, objekt Curriculum je pouze informativní, protože databáze pracuje pouze s jedním kurikulem:

    Ale mezi těmito dvěma objekty je vztah 1:n, takže musíme zavést další tabulku, která bude reprezentovat vztahy mezi těmito tabulkami. To bude tabulka Učí (Disciplina-Prepodavatel) a tabulka Učí (Disciplina-Student).

    Prezentovanou databázi lze přiřadit 5. normální formě, protože je ve 3. normální formě a primární klíč je jednoduchý. Logické schéma je implementováno v aplikaci Microsoft Access.

    Obrázek 2

    8. Struktura tabulek

    Výchozí databáze se skládá z 5 tabulek (tabulka Curriculums není brána v úvahu, protože je použito jedno kurikulum).

    Vysvětlení polí:

    proti disciplína.db

    Ш Nazv- název disciplíny, typ pole: String;

    W kód - unikátní kód disciplíny: LongInt;

    Ш Semestr - semestr, ve kterém se vyučuje: String;

    Ш KolLeKCh - počet přednášek v této disciplíně: LongInt;

    Ш KolPraktCh - počet cvičení v této disciplíně: LongInt;

    Ш KolLabRabCh - počet přednášek v této disciplíně: LongInt;

    Ш VsegoCh - celkový počet hodin: LongInt;

    Ш NomerYP - číslo učebního plánu, který obsahuje disciplínu: LongInt.

    proti Student.db

    Ш NomerStudBileta - ID studenta: LongInt;

    Ш FIO - příjmení studenta: ShortInt;

    proti Prepodaet.db (učitel-učitel)

    Ш TabNomerPrepod - personální číslo učitele, který vyučuje příslušný obor: LongInt;

    Ш FIO- jméno učitele, který vyučuje příslušnou disciplínu: String.

    proti Prepod.db

    Ш FIO - celé jméno učitele: String;

    Ш TabelNomerPrepodavatelya - jedinečné osobní číslo učitele: LongInt;

    Ш Kafedra - oddělení, kde působí: Smyčcový;

    Ш Dolshnost - Pozice učitele: Struna;

    SH telefon- kontaktní číslo učitel: Struna.

    v Izuchaet.db (Disciplina-Student)

    Ш KodDiscip - kód disciplíny: LongInt;

    Ш NomerStudBileta - číslo studentského průkazu studenta studujícího obor: LongInt;

    Ш FIO- celé jméno studenta, který studuje příslušný obor: Struna;

    Ш Ocenka - hodnocení studenta ve studovaném oboru: LongInt;.

    9. Návrh SQL dotazů

    1. Vytvořte seznam zápočtů a zkoušek pro každý semestr.

    vyberte Nazv,FormaReport

    kde Semestr=:s a

    (Disciplina.FormaOtchet="Půjčka" nebo Disciplina.FormaOtchet="Zkouška" );

    2. Vytvořit zkušební a testové listy / základní a doplňkové/ pro každý předmět.

    Hlavní výpis:

    vyberte Teacher.FIO,

    Disciplina.ObsheeKolChVNed,Disciplina.Semestr,Izuchaet.FIO,Izuchaet.

    Ocenka,Disciplina.Nazv

    z Disciplina, Prepodaet, Izuchaet

    kde Disciplina.KodDiscip=Prepodaet.KodDiscip

    a (Disciplina.FormaOtchet="Zkouška" nebo Disciplina.FormaOtchet="Pass")

    Dodatečné prohlášení (pro studenty s 2):

    vyberte Disciplina.Nazv,Prepodaet.FIO,

    Disciplina.ObsheeKolChVNed,Izuchaet.FIO,Disciplina.Semestr,Izuchaet.Ocenka

    z Izuchaet,Disciplina,Prepodaet

    kde Izuchaet.Evaluation="2"

    a Disciplina.KodDiscip=Izuchaet.KodDiscip

    a Disciplina.KodDiscip=Prepodaet.KodDiscip

    a (Disciplina.FormaOtchet="Zkouška" nebo Disciplina.FormaOtchet="Pass");

    Aktualizovat disciplínu

    set ObsheeKolChVNed=VsegoCh/17;

    4. Připravte přílohu k diplomu každého studenta:

    vyberte Disciplina.Nazv, Izuchaet.Ocenka, Izuchaet.FIO

    z Izuchaet, Disciplina

    kde Disciplina.KodDiscip=Izuchaet.KodDiscip

    a Disciplina.FormaRetchet="zkouška"

    Vyberte AVG(Ocenka) jako SrBall

    Seřadit podle SrBall desc;

    5. Uveďte skupinu v sestupném pořadí podle průměrného skóre:

    Vyberte FIO, AVG (Ocenka) jako SrBall

    Seřadit podle SrBall desc;

    10. Struktura a funkce systému

    Práce v kurzu se skládá z jednoho projektu „Project1“ a 13 modulů.

    1. Unit1 - je zde uložen formulář, který je titulní stranou. Použité komponenty: Memo, Button.

    2. Unit2 - zde je uložen formulář, který je úvodní stránkou databáze. Jsou zde použity následující komponenty: Tlačítko, Poznámka.

    3. Unit3 - zde je uložen formulář, který obsahuje všechny databázové tabulky ve formě záložek. Jsou zde použity následující komponenty: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    4. Unit4 - zde je uložen formulář, na kterém je úkol zobrazen. Jsou zde použity následující komponenty: Memo, Button.

    5. Unit5 - zde je uložen formulář, který zobrazuje doplňkový vyšetřovací list. Jsou zde použity následující komponenty: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    6. Unit6 - zde je uložen formulář, který zobrazuje seznam zkoušek a testů. Jsou zde použity následující komponenty: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    7. Unit7 - zde je uložen formulář, který zobrazuje hlavní vyšetřovací list. Jsou zde použity následující komponenty: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    8. Unit8 - zde je uložen formulář, který zobrazuje seznam skupiny v sestupném pořadí. Jsou zde použity následující komponenty: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    9. Unit9 - zde je uložen formulář, který zobrazuje vložku v diplomu. Jsou zde použity následující komponenty: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    10. Unit10 - zde je uložen formulář, který zobrazuje formulář pro vyplnění elektronického výpisu. Jsou zde použity následující komponenty: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    11. Unit11 - zde je uložen formulář, na kterém se zobrazuje menu. Jsou zde použity následující komponenty: Memo, Button, Label.

    12. Unit12 - zde je uložen formulář, který zobrazuje zprávu o vytvoření elektronického zkušebního listu. Zde použité komponenty jsou: Memo and Button, RVProject, RVQueryConnection a Query.

    13. Unit13 - zde je uložen formulář, který zobrazuje zprávu o vytvoření přílohy v diplomu. Zde použité komponenty jsou: Memo and Button, RVProject, RVQueryConnection a Query.

    11. Uživatelská příručka

    1. Zahájíme projekt. Před námi se objeví titulní strana práce kurzu

    Obrázek 3

    Zde můžeme rovnou vstoupit do databáze, nebo se můžeme podívat na úkol a vrátit se do tohoto formuláře. Vyberte "Zobrazit úkol"

    2. Před námi se objeví okno s informacemi o zadání semestrální práce

    Obrázek 4

    3. Vrátíme se zpět kliknutím na příslušné tlačítko a začneme pracovat kliknutím na tlačítko předchozího okna „Pokračovat“

    Obrázek 5

    4. Po kontrole informací na této stránce klikněte na tlačítko "Přihlásit se".

    Obrázek 6

    Objeví se před námi okno obsahující na kartách všechny informace obsažené v databázi. Zde si můžeme prohlédnout seznam oborů, studijní skupiny, učitelů, co tito či ti studenti studují a jaký předmět vyučující vyučují.

    5. Také z tohoto okna můžeme přejít na požadavky. Klikněte na příslušné tlačítko.

    Obrázek 7

    Zde můžeme vybrat jakýkoli požadavek, který nás zajímá, pouhým kliknutím na příslušné tlačítko. I zde se můžeme vrátit k tabulkám a přistoupit k vytvoření elektronické verze zkušebního listu.

    6. Klikněte na tlačítko "Zobrazit seznam zápočtů a zkoušek za každý semestr"

    Postavení 8

    Zde je potřeba zadat číslo semestru a kliknout na tlačítko níže, poté se v okně tabulky objeví seznam zkoušek a zápočtů za vámi zadaný semestr. Z tohoto listu se můžeme vrátit k dotazům.

    7. Klikněte na tlačítko „Přejít na hlavní zkušební list“

    Zde je potřeba z rozbalovacího seznamu vybrat název disciplíny, poté tento název zadat do pole pod rozbalovacím seznamem a kliknout na tlačítko „Spustit“. Dotaz zobrazí celkový počet hodin týdně na studium vámi zadané disciplíny a také zobrazí seznam studujících studentů tuto disciplínu a jejich hodnocení pro tuto disciplínu. Pozornost! Hodnotící pole se vyplňuje na formuláři s tabulkami uvnitř záložky Student-Předmět. Také na tomto listu můžete vytvořit další zkušební list. Pro studenty se známkou 2. Z tohoto listu se můžeme vrátit k žádostem.

    Obrázek 9

    8. Klikněte na tlačítko „Přejít na další zkušební list“

    Obrázek 10

    Zde můžeme vidět studenty, kteří mají z určitého oboru dvojku. Z tohoto listu se můžeme vrátit k dotazům.

    9. Klikněte na tlačítko "Vygenerovat přílohu k diplomu"

    Obrázek 11

    Zde musíte zadat celé jméno absolventa výběrem příslušného studenta z rozevíracího seznamu. Dále stiskněte klávesu . A následně se na požádání do kolonky "Disciplína" vyplní seznam oborů studovaných za 5 let studia a objeví se odpovídající známky. Na stejném listu si můžete zobrazit elektronickou verzi přílohy kliknutím na tlačítko "Verze pro tisk". Po zhlédnutí této verze stačí zavřít okno, které se otevře na červený křížek v pravém horním rohu obrazovky.

    Obrázek 12

    10. Klikněte na tlačítko "Zobrazit seznam skupiny v sestupném pořadí podle průměrného skóre"

    Obrázek 13

    Zde vidíme seznam skupiny a průměrné skóre odpovídající každému studentovi, uspořádané v sestupném pořadí. Z tohoto listu se můžeme vrátit k dotazům.

    Obrázek 14

    Vyberte z rozevíracího seznamu obor, který nás zajímá, například ekonomie, a zadejte jeho název do pole pod rozevíracím seznamem. Dále stiskněte tlačítko spustit a podívejte se na jméno učitele této disciplíny.

    Obrázek 16

    Zde vidíme název disciplíny, kterou jsme si vybrali, celé jméno učitele této disciplíny. Stejně jako seznam studentů, kteří tento obor studovali. Chcete-li zprávu opustit, jednoduše klikněte na křížek v pravém horním rohu obrazovky. Vrátíme se k předchozímu listu. Z tohoto listu se můžeme vrátit k dotazům.

    12. Vytvořte tabulky

    K vytvoření tabulek byly použity nástroje Database Desktop. Lze jej spustit - Start/Programy/Borland Delphi 7/ Database Desktop. Musí být nakonfigurován pracovní adresář nástroje. Vyberte příkaz Soubor/pracovní adresář a nastavte svůj pracovní adresář. Chcete-li vytvořit tabulku, vyberte příkaz Soubor/Nová/Tabulka. Poté musíte vybrat typ tabulky. Typ PARADOX 7 lze považovat za nejlepší pro tabulky souborového serveru.

    1. Vytvořte tabulku YchebPlan (Curriculum):

    Obrázek 17

    5. Vytvořte tabulku Disciplina (Disciplína):

    Obrázek 18

    6. Vytvořte tabulku Student:

    Obrázek 19

    7. Vytvoření tabulky Prepodaet (Discipline-Teacher):

    Obrázek 20

    5. Vytvořte tabulku Prepod (učitel):

    Obrázek 21

    8. Vytvoření tabulky Izuchaet (Disciplína-Student):

    Obrázek 22

    13. Vytvoření aplikace v Delphi

    Chcete-li vytvořit novou aplikaci, vyberte Nová/Aplikace z nabídky Soubor. Objeví se formulář a modul (obecně se tomu říká projekt), nyní jej můžete umístit na formulář potřebné komponenty. V případě potřeby můžete vytvořit jiný formulář (a více než jeden), k tomu je třeba vybrat položku Nový / Formulář v nabídce Soubor.

    1. Tabulka. Vyplnění daty. Zobrazení dat.

    Chcete-li zobrazit tabulku na formuláři, musíte na ni umístit komponenty:

    · Tabulka (na kartě BDE) - V Inspektoru objektů na kartě Parametry ve vlastnosti Název tabulky vyberte požadovanou tabulku.

    Obrázek 23

    · DBGrid (na záložce DataControls) - nutné pro zobrazení tabulky ve formuláři, zadejte požadovaný zdroj dat v Object Inspector ve vlastnosti DataSource.

    Obrázek 24

    · DBNavigator (na záložce DataControls) - potřebný k procházení záznamů tabulky. V Inspektoru objektů vlastnost DataSource určuje stejný zdroj dat jako v DBGrid. Funkce navigátoru jsou dostupné kliknutím na jeho tlačítka za běhu aplikace Komponenta obsahuje 10 tlačítek.

    Obrázek 25

    · DataSource (záložka Data Access) - komponenta střední úrovně pro přístup k datům. Slouží jako prostředník mezi tabulkami DBMS a ovládacími prvky na obrazovce (DBGrid, DBNavigator).

    Obrázek 26

    14. Vytvoření pole s informacemi (Memo) a tlačítky

    Komponenta Memo je umístěna na formuláři, který se nachází na kartě Standard.

    Obrázek 27

    V Inspektoru objektů na záložce "Parametry" ve vlastnosti Čáry zadejte text požadovaný pro zobrazení

    Obrázek 28

    Vytváření tlačítek.

    Pro správné uzavření formuláře je na něm umístěna komponenta Button, která se nachází na kartě Standard.

    Obrázek 29

    Aby tlačítko fungovalo, musíte v obslužné rutině události OnClick zadat:

    procedure TForm1.N5Click(Sender: TObject);

    začít

    Form2.Show;

    Form1.Close;

    konec;

    15. Vytvořte popisky pro tabulky

    K podepsání tabulky v práci v kurzu byla použita komponenta Lable umístěná na záložce Standard. V Object Inspector ve vlastnosti Caption stačí napsat text.

    Obrázek 30

    16. Vytvořte rozevírací seznam

    Pro výběr příkazu z existujícího seznamu se používá komponenta ComboBox (rozbalovací seznam). Dá se to vyplnit takto

    V Inspektoru objektů ve vlastnosti Items napište:

    Obrázek 31

    16. Vytvářejte zprávy

    Sestava se vytváří pomocí nástroje QReports, který je nutné nejprve připojit: Komponenta->instalační balíčky->přidat otevřete složku bin vyberte soubor dclqrt70.bpl, klikněte na OK a poté se zobrazí karta s komponentami QReport. Komponenty, které používám:

    tabulka 2

    17. Výpis programu

    Popis projektu

    program Projekt1;

    používá

    formuláře,

    Unit1 v "Unit1.pas" (Form1),

    Unit2 v "Unit2.pas" (Form2),

    Unit3 v "Unit3.pas" (Form3),

    Unit4 v "Unit4.pas" (Form4),

    Unit5 v "Unit5.pas" (Form5),

    Unit6 v "Unit6.pas" (Form6),

    Unit7 v "Unit7.pas" (Form7),

    Unit8 v "Unit8.pas" (Form8),

    Unit9 v "Unit9.pas" (Form9),

    Unit10 v "Unit10.pas" (Form10),

    Unit11 v "Unit11.pas" (Form11),

    Unit12 v "Unit12.pas" (Form12),

    Unit13 v "Unit13.pas" (Form13),

    Jednotka14 v "Jednotka14.pas" (Formulář14);

    ($R*.res)

    začít

    Application.Initialize;

    Application.CreateForm(TForm1, Form1);

    Application.CreateForm(TForm2, Form2);

    Application.CreateForm(TForm3, Form3);

    Application.CreateForm(TForm4, Form4);

    Application.CreateForm(TForm5, Form5);

    Application.CreateForm(TForm6, Form6);

    Application.CreateForm(TForm7, Form7);

    Application.CreateForm(TForm8, Form8);

    Application.CreateForm(TForm9, Form9);

    Application.CreateForm(TForm10, Form10);

    Application.CreateForm(TForm11, Form11);

    Application.CreateForm(TForm12, Form12);

    Application.CreateForm(TForm13, Form13);

    Application.CreateForm(TForm14, Form14);

    Application.Run;

    konec.

    Popis modulu Unit1

    jednotka Unit1;

    rozhraní

    používá

    Dialogy, StdCtrls;

    typ

    TForm1 = class(TForm)

    Memo1:TMemo;

    Tlačítko1: TButton;

    Tlačítko2: TButton;

    Tlačítko3: TButton;

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Form1: TForm1;

    implementace

    používá Jednotka2, Jednotka4, Jednotka6, Jednotka7, Jednotka5, Jednotka8, Jednotka9, Jednotka10;

    ($R *.dfm)

    procedure TForm1.Button3Click(Sender: TObject);

    začít

    forma2.zobrazit;

    konec;

    procedure TForm1.Button2Click(Sender: TObject);

    začít

    Form1.Close;

    konec;

    procedure TForm1.Button1Click(Sender: TObject);

    začít

    forma4.zobrazit;

    konec;

    konec.

    Popis modulu Unit2

    jednotka Unit2;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    Dialogy, StdCtrls;

    typ

    TForm2 = class(TForm)

    Memo1:TMemo;

    GroupBox1: TGroupBox;

    Tlačítko1: TButton;

    Tlačítko2: TButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Form2: TForm2;

    implementace

    používá Unit3;

    ($R *.dfm)

    procedure TForm2.Button1Click(Sender: TObject);

    začít

    forma3.zobrazit;

    Form2.Close;

    konec;

    procedure TForm2.Button2Click(Sender: TObject);

    začít

    Form2.Close;

    konec;

    Popis modulu Unit3

    jednotka Unit3;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    Dialogy, ComCtrls, ExtCtrls, DBCtrls, Grids, DBGrids, DB, DBTables,

    StdCtrls, QuickRpt, QRCtrls;

    typ

    TForm3 = class(TForm)

    PageControl1:TPageControl;

    TabSheet1: TTabSheet;

    TabSheet2: TTabSheet;

    TabSheet3: TTabSheet;

    TabSheet4: TTabSheet;

    TabSheet5: TTabSheet;

    TabSheet6: TTabSheet;

    DataSource1:TDataSource;

    DataSource2: TDataSource;

    DataSource3:TDataSource;

    DataSource4: TDataSource;

    Tabulka 1: Tabulka TT;

    Tabulka 2: Tabulka TT;

    Tabulka 3: Tabulka TT;

    Tabulka 4: Tabulka TT;

    DBGrid1: TDBGrid;

    DBNavigator1: TDBNavigator;

    DBGrid2: TDBGrid;

    DBNavigator2: TDBNavigator;

    DBGrid3: TDBGrid;

    DBNavigator3: TDBNavigator;

    DBGrid4: TDBGrid;

    DBNavigator4: TDBNavigator;

    DBGrid5: TDBGrid;

    DBNavigator5: TDBNavigator;

    DBGrid6: TDBGrid;

    DBNavigator6: TDBNavigator;

    Tlačítko1: TButton;

    DataSource5:TDataSource;

    DataSource6:TDataSource;

    Tabulka 5: Tabulka TT;

    Tabulka 6: Tabulka TT;

    Dotaz1: TQuery;

    Tlačítko2: TButton;

    Label1: T Label;

    Memo1:TMemo;

    Label3: T Label;

    Tlačítko3: TButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Form3: TForm3;

    implementace

    používá Unit5, Unit11;

    ($R *.dfm)

    procedure TForm3.Button1Click(Sender: TObject);

    začít

    Form11.show;

    Form3.zavřít;

    konec;

    procedure TForm3.Button2Click(Sender: TObject);

    začít

    Query1.ExecSQL;

    Form3.Refresh;

    konec;

    procedure TForm3.Button3Click(Sender: TObject);

    začít

    Form3.zavřít;

    konec;

    Popis modulu Unit4

    jednotka Unit4;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    Dialogy, StdCtrls;

    typ

    TForm4 = class(TForm)

    Memo1:TMemo;

    Tlačítko1: TButton;

    procedure Button1Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Form4: TForm4;

    implementace

    používá Unit1;

    ($R *.dfm)

    procedure TForm4.Button1Click(Sender: TObject);

    začít

    forma1.zobrazit;

    konec;

    Popis modulu 5. bloku

    jednotka Unit5;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    Dialogy, DB, DBTables, Grids, DBGrids, StdCtrls, Mask, DBCtrls, ExtCtrls;

    typ

    TForm5 = class(TForm)

    DataSource1:TDataSource;

    DBGrid1: TDBGrid;

    Dotaz1: TQuery;

    DBEdit1: TDBEdit;

    DBEdit2: TDBEdit;

    DBEdit3: TDBEdit;

    Label1: T Label;

    Label2: T Label;

    Label3: T Label;

    Label4: T Label;

    DBNavigator1: TDBNavigator;

    Tlačítko1: TButton;

    procedure ComboBox1Change(Sender: TObject);

    procedure Edit1Change(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Formulář5: TForm5;

    implementace

    používá Unit11;

    ($R *.dfm)

    procedure TForm5.ComboBox1Change(Sender: TObject);

    začít

    Query1.Active:=true;

    konec;

    procedure TForm5.Edit1Change(Sender: TObject);

    začít

    Dotaz1.Otevřít;

    konec;

    procedure TForm5.Button1Click(Sender: TObject);

    začít

    Form11.show;

    Form5.Close;

    konec;

    Popis modulu 6. bloku

    jednotka Unit6;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    Dialogy, DB, DBTables, Grids, DBGrids, StdCtrls, ExtCtrls, DBCtrls;

    typ

    TForm6 = class(TForm)

    Tlačítko1: TButton;

    Edit1: TEdit;

    DataSource1:TDataSource;

    DBGrid1: TDBGrid;

    Dotaz1: TQuery;

    Label1: T Label;

    DBNavigator1: TDBNavigator;

    Label2: T Label;

    Memo1:TMemo;

    Tlačítko2: TButton;

    Label3: T Label;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Form6: TForm6;

    implementace

    používá Unit11;

    ($R *.dfm)

    procedure TForm6.Button1Click(Sender: TObject);

    začít

    Query1.Close;

    pokud ne Query1.Prepared then

    Dotaz1.Připravit;

    if length(edit1.text)<>0 pak

    jiný

    začít

    Query1.Params.Value:=0;

    konec;

    Dotaz1.Otevřít;

    konec;

    procedure TForm6.Button2Click(Sender: TObject);

    začít

    Form11.show;

    Form6.Close;

    konec;

    Popis modulu 7. bloku

    jednotka Unit7;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    Dialogy, StdCtrls, Grids, DBGrids, DBTables, DB, Mask, DBCtrls, ExtCtrls,

    QRCtrls, QuickRpt;

    typ

    TForm7 = class(TForm)

    Label1: T Label;

    Label2: T Label;

    DataSource1:TDataSource;

    Dotaz1: TQuery;

    Edit2: TEdit;

    Tlačítko1: TButton;

    DBEdit1: TDBEdit;

    DBEdit2: TDBEdit;

    Label3: T Label;

    DBGrid1: TDBGrid;

    Label4: T Label;

    Label5: T Label;

    DBNavigator1: TDBNavigator;

    Tlačítko2: TButton;

    Label6: T Label;

    Label7: T Label;

    Memo1:TMemo;

    ComboBox1: TComboBox;

    Label8: T Label;

    Tlačítko3: TButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Formulář7: TForm7;

    implementace

    používá Unit5, Unit11;

    ($R *.dfm)

    procedure TForm7.Button1Click(Sender: TObject);

    začít

    Query1.Close;

    pokud ne Query1.Prepared then

    Dotaz1.Připravit;

    if length(edit2.text)<>0 pak

    Query1.Params.Value:=edit2.Text

    jiný

    začít

    Query1.Params.Value:=0;

    edit2.Text:="Zadejte název!";

    konec;

    Dotaz1.Otevřít;

    konec;

    procedure TForm7.Button2Click(Sender: TObject);

    začít

    forma5.zobrazit;

    Form7.zavřít;

    konec;

    procedure TForm7.Button3Click(Sender: TObject);

    začít

    Form11.show;

    Form7.zavřít;

    konec;

    Popis modulu 8. bloku

    jednotka Unit8;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    typ

    TForm8 = class(TForm)

    Label4: T Label;

    DataSource1:TDataSource;

    Dotaz1: TQuery;

    DBGrid1: TDBGrid;

    DBNavigator1: TDBNavigator;

    Tlačítko1: TButton;

    Memo1:TMemo;

    procedure Button1Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Form8: TForm8;

    implementace

    používá Unit11;

    ($R *.dfm)

    procedure TForm8.Button1Click(Sender: TObject);

    začít

    Form11.show;

    Form8.close;

    konec;

    Popis modulu 9. bloku

    jednotka 9;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    Dialogy, mřížky, DBGrids, DB, DBTables, StdCtrls, Mask, DBCtrls, ExtCtrls;

    typ

    TForm9 = class(TForm)

    Edit1: TEdit;

    Dotaz1: TQuery;

    DataSource1:TDataSource;

    DBGrid1: TDBGrid;

    Tlačítko1: TButton;

    Dotaz2: TQuery;

    DataSource2: TDataSource;

    Tlačítko2: TButton;

    DBEdit1: TDBEdit;

    DBNavigator1: TDBNavigator;

    Label1: T Label;

    Label2: T Label;

    Label3: T Label;

    Název: TComboBox;

    Tlačítko3: TButton;

    Memo1:TMemo;

    Label4: T Label;

    Tlačítko4: TButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Form9: TForm9;

    implementace

    používá Unit11, Unit13;

    ($R *.dfm)

    procedure TForm9.Button1Click(Sender: TObject);

    začít

    Query1.Close;

    pokud ne Query1.Prepared then

    Dotaz1.Připravit;

    if length(edit1.text)<>0 pak

    Query1.Params.Value:=edit1.Text

    jiný

    začít

    Query1.Params.Value:=0;

    edit1.Text:="Zadejte jméno absolventa!";

    konec;

    Dotaz1.Otevřít;

    konec;

    procedure TForm9.Button2Click(Sender: TObject);

    začít

    Query2.Close;

    pokud ne Query2.Prepared then

    Dotaz2.Připravit;

    if length(edit1.text)<>0 pak

    Query2.Params.Value:=edit1.Text

    jiný

    začít

    Query2.Params.Value:=0;

    edit1.Text:="Zadejte číslo semestru!";

    konec;

    Dotaz2.Otevřít;

    konec;

    procedure TForm9.Button3Click(Sender: TObject);

    začít

    Form11.show;

    Form9.close;

    konec;

    procedure TForm9.Button4Click(Sender: TObject);

    začít

    Form13.QuickRep1.Preview;

    konec;

    Popis modulu Unit 10

    jednotka Unit10;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    Dialogy, ExtCtrls, QuickRpt, StdCtrls, DB, DBTables, Mask, DBCtrls,

    Mřížky, DBGrids;

    typ

    TForm10 = třída (TForm)

    Tlačítko1: TButton;

    Dotaz1: TQuery;

    DataSource1:TDataSource;

    DBEdit1: TDBEdit;

    DBEdit2: TDBEdit;

    Label1: T Label;

    Label2: T Label;

    Edit1: TEdit;

    Tlačítko2: TButton;

    Label3: T Label;

    ComboBox1: TComboBox;

    Label4: T Label;

    Label5: T Label;

    Memo1:TMemo;

    Label6: T Label;

    Label7: T Label;

    Tlačítko3: TButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Form10: TForm10;

    implementace

    používá Jednotka3, Jednotka7, Jednotka12, Jednotka11;

    ($R *.dfm)

    procedure TForm10.Button1Click(Sender: TObject);

    začít

    Form12.QuickRep1.Preview;

    konec;

    procedure TForm10.Button2Click(Sender: TObject);

    začít

    Query1.Close;

    pokud ne Query1.Prepared then

    Dotaz1.Připravit;

    if length(edit1.text)<>0 pak

    Query1.Params.Value:=edit1.Text

    jiný

    začít

    Query1.Params.Value:=0;

    edit1.Text:="Zadejte název!";

    konec;

    Dotaz1.Otevřít;

    konec;

    procedure TForm10.Button3Click(Sender: TObject);

    začít

    Form11.show;

    konec;

    Popis modulu 11. bloku

    jednotka Unit11;

    rozhraní

    používá

    Windows, Zprávy, SysUtils, Varianty, Třídy, Grafika, Ovládací prvky, Formuláře,

    Dialogy, StdCtrls;

    typ

    TForm11 = class(TForm)

    Tlačítko1: TButton;

    Tlačítko2: TButton;

    Tlačítko3: TButton;

    Tlačítko4: TButton;

    Tlačítko5: TButton;

    Tlačítko6: TButton;

    Memo1:TMemo;

    Label1: T Label;

    Label2: T Label;

    Label3: T Label;

    Tlačítko7: ​​TButton;

    Label4: T Label;

    Label5: T Label;

    procedure Button2Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Button4Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

    procedure Button6Click(Sender: TObject);

    procedure Button7Click(Sender: TObject);

    soukromé

    (soukromá prohlášení)

    veřejnost

    (Veřejná prohlášení)

    konec;

    var

    Form11: TForm11;

    implementace

    Podobné dokumenty

      Vytváření tabulek a návrh systémů pro správu databází. Infologický design. Schéma relační databáze. Aplikovaná hodnota systémů: zpráva o dodavatelích a jimi dodávaném zboží. Prohlášení o dostupnosti zboží na prodejně.

      semestrální práce, přidáno 12.1.2008

      Vývoj databáze s informacemi o zaměstnancích, zboží, s adresářem druhů zboží pomocí systému správy databáze Data MySQL pomocí SQL dotazů. Vypracování infoologického modelu předmětné oblasti. Struktura tabulek, databázová pole.

      test, přidáno 13.04.2012

      Proces návrhu databáze, rozvoj její logické struktury v souladu s infoologickým modelem předmětné oblasti. Práce s programem Access DBMS, vlastnosti tabulek a jejich polí, tvorba mezitabulkových vazeb; infoologický design.

      semestrální práce, přidáno 17.12.2009

      Základní pojmy databáze a databázových systémů správy. Datové typy, se kterými pracují databáze Microsoft Access. Klasifikace DBMS a jejich hlavní charakteristiky. Postrelační databáze. Trendy ve světě moderních informačních systémů.

      semestrální práce, přidáno 28.01.2014

      Vlastnosti vývoje infologického modelu a vytvoření struktury relační databáze data. Základy návrhu databáze. Vývoj tabulek, formulářů, dotazů pro zobrazení informací o odpovídajícím modelu. Práce s databázemi a jejich objekty.

      semestrální práce, přidáno 11.5.2011

      Charakteristiky výzkumu a funkčnost systémy pro správu databází Microsoft Office přístup. Definice hlavních tříd objektů. Vývoj databáze "Kancelářské práce". Tvorba tabulek, formulářů, dotazů, sestav a datových schémat.

      abstrakt, přidáno 12.5.2014

      Trend ve vývoji systémů pro správu databází. Hierarchické a síťové modely DBMS. Základní požadavky na distribuovanou databázi. Zpracování distribuovaných požadavků, interoperabilita. Technologie replikace dat a vícevrstvá architektura.

      abstrakt, přidáno 29.11.2010

      Teoretické informace a základní pojmy databází. Systémy správy databází: složení, struktura, zabezpečení, režimy provozu, objekty. Práce s databázemi v OpenOffice.Org BASE: vytváření tabulek, vztahů, dotazů pomocí Průvodce dotazem.

      semestrální práce, přidáno 28.04.2011

      Návrh databáze pro systém pro příjem, zpracování a účtování žádostí do oddělení informačních technologií; vývoj infoologických a datalogických modelů, implementace fyzikálního modelu. Tvorba aplikací pro vizualizaci práce s databází.

      práce, přidáno 25.01.2013

      Výběr informačních objektů a jejich infologický model. Logická struktura relační databáze. Vývoj tabulek v systému pro správu databází Access. Vytváření požadavků, formulářů a sestav v DBMS Access. Vývoj uživatelských aplikací.