230 likes | 382 Views
Základné pojmy z DBS. Prezentácia k 2. hodine – 4.ročník VYT. Databázový systém. DBS = BD + SRBD Je zložený z bázy dát a skupiny programov nazývanej Systém Riadenia Bázy Dát
E N D
Základné pojmy z DBS Prezentácia k 2. hodine – 4.ročník VYT
Databázový systém • DBS = BD + SRBD • Je zložený z bázy dát a skupiny programov nazývanej Systém Riadenia Bázy Dát • SRBD pomáha realizovať základné databázové funkcie - umožňuje komunikáciu s používateľom, definovanie, údržbu, uloženie a výber dát + kontrolu a riadenie databáz • Databáza je množina dát, ktoré nejakým spôsobom súvisia
Vlastnosti DBS (1) • Perzistencia (stálosť)- životnosť dát nie je ohraničená časom vykonávania programu - t.j. dáta existujú aj po ukončení programu, ktorý s nimi manipuluje. • Správa externej pamäte - väčšina dát sa uchováva v externých pamätiach. Ak chce program aktualizovať niektoré údaje, musí ich najprv načítať z externej do operačnej pamäte, tam ich spracovať a potom opätovne zapísať do externej pamäte. • Konkurentnosť - s uchovávanými dátami môže súčasne pracovať viac používateľov. Systém musí zabezpečiť riešenie potenciálnych konfliktov, ak sa pokúsi s rovnakými údajmi naraz manipulovať niekoľko používateľov.
Vlastnosti DBS (2) • Bezpečnosť - databázové systémy sa často používajú v "citlivých" oblastiach, ako napríklad bankové systémy, registre obyvateľstva a pod. Systém musí byť preto chránený pred nepovoleným prístupom. • Spoľahlivosť - keďže uchovávané dáta bývajú často veľmi dôležité, nesmie dôjsť k ich strate alebo poškodeniu pri zlyhaní hardwaru alebo softwaru. • Dotazovanie - Databázový systém preto má poskytovať jazyk veľmi vysokej úrovne, ktorý dovolí laickému používateľovi, so znalosťou základnej štruktúry bázy dát, vyhľadávanie dát podľa jednoduchých kritérií.
SQL • Structured query language – štrukturovaný dotazovací jazyk • Používa sa pre prácu s dátami v DBS • Má tri časti: • DDL (data definition language) – jazyk pre definíciu dát • DML (data manipulation language) – jazyk pre manipuláciu s dátatmi • DCL (data control languge) – jazyk pre kontrolu (riadenie) prístupu k dátam
Databázy • Podľa spôsobu usporiadania údajov ich delíme na: • Sieťové • Hierarchicky usporiadané • Relačné • Objektovo orientované
Relačné databázy • Sú najviac používaným typom databáz vo svete • Ich základom sú dvojrozmerné entity – tabuľky • Tabuľky sa skladajú z riadkov a stĺpcov a zhromažďujú údaje o jednom druhu objektov (napr. osobné údaje zamestnancov firmy)
Riadky a stĺpce tabuľky • Jeden riadok predstavuje tzv. jeden záznam (alebo vetu), teda skupinu vzájomne súvisiacich údajov (usporiadanú n-ticu) • Stĺpce sa nazývajú tiež atribúty objektov a údaje v nich sú jedného rovnakého dátového typu • Každý stĺpec má svoje meno, aby sa dal jednoducho identifikovať • Každý riadok má svoj jednoznačný identifikátor nazývaný aj primárny kľúč
Primárne a cudzie kľúče • Primárny kľúč je atribút alebo skupina atribútov, ktoré jednoznačne identifikujú riadok v tabuľke • Primárny kľúč má skratku PK (primary key) • Cudzí kľúč je atribút alebo skupina atribútov tvoriacich v inej relácii primárny kľúč • Používa sa na previazanie dvoch alebo viacerých tabuliek • Cudzí kľúč má skratku FK (foreign key)
Dátové typy • Numerické – číselné údaje - celé čísla, reálne čísla, vektory čísel, polia čísel • Symbolické – reťazce znakov slúžiace na popis vlastností objektov • Logické – áno/nie, pravda/nepravda • Zložené – skladajú sa z viacerých typov údajov a väčšinou vyjadrujú hierarchické usporiadanie objektov
Ordinárne a nominálne dátové typy • Môžu sa dať prirodzene usporiadať napr. výborný, chválitebný, dobrý, dostatočný, (nedo)statočný – takýmto atribútom hovoríme ordinárne (order (angl.) - poradie) • Niektoré atribúty sa nedajú prirodzene usporiadať napr. sypký, tekutý, slaný, sladký, ... – takýmto atribútom hovoríme nominálne (nominal (angl.) – menovité)
Základné dátové typy • Celočíselný – INT • Reálne číslo – FLOAT • Reťazec – VARCHAR (do 255 znakov) • Dlhý text – TEXT • Súbor – BLOB • Dátum – DATE • Dátum a čas - DATETIME
Integrita • Pod týmto pojmom si môžeme predstaviť pravidlá pre zaistenie správnosti a konzistencie uložených dát • I. Entitná integrita - Zaistenie jednoznačnej identifikácie každého riadku relácie tj. každý riadok má jednoznačný primárny kľúč • II. Doménová integrita - Zaistenie, aby každá hodnota atribútu bola v súlade s množinou prípustných hodnôt (aby napr. v stĺpci s celočíselným dátovým typom neboli písmená) • III. Referenčná integrita - Cudzie kľúče (tj. atribúty alebo skupina atribútov tvoriace v inej relácii primárny kľúč) nemôže nadobúdať hodnoty, ktoré sú v rozpore s hodnotami odkazovaného primárneho kľúča
Redundancia • Redundancia dát znamená viacnásobný výskyt tých istých dát v databáze • Hlavným problémom mnohých databáz je viacnásobný výskyt dát, z čoho vyplývajú zvýšené náklady na udržiavanie týchto duplicitných dát • Môžu existovať aplikácie, kde redundancia dát je výhodná, dokonca žiadaná (distribuované databázové systémy), avšak musí byť podporovaná príslušným systémom riadenia bázy dát, alebo aplikáciou.
Vzťahy medzi tabuľkami • Na to, aby v databáze nemusela existovať redundancia, s výhodou využívame možnosť „previazať“ dve tabuľky pomocou primárnych kľúčov • Napr. ak máme tabuľku s osobnými údajmi zamestnancov, kde uchovávame mesto a PSČ, vznikali by duplicitné dáta, zaberajúce príliš veľa miesta • Previazanie tabuliek je znázornené na ďalšom slide
Vzťah 1:n • Modeluje vzťah medzi tabuľkami, keď jeden objekt môže vlastniť resp. popisovať viacero iných, resp. viac objektov môže mať rovnakú vlastnosť • Je to napríklad vzťah medzi autorom a knihou, keď jeden autor môže mať v databáze viac kníh
Vzťah m:n Modeluje vzťah medzi tabuľkami, keď niekoľko objektov môže vlastniť resp. popisovať viacero iných Je to napríklad vzťah medzi zamestnancom a projektom na ktorom pracuje v prípade, že na jednom projekte môže pracovať viac zamestnancov a jeden zamestnanec môže pracovať na viacerých projektoch Takýto vzťah nahradíme dvojicou vzťahov 1:n
Vzťah 1:1 • Špeciálny, málo používaný prípad vzťahu 1:n • Modeluje vzťah medzi tabuľkami, keď jeden objekt môže vlastniť resp. popisovať práve jeden iný • Je to napríklad vzťah medzi osobou a rodným číslom, aj keď sa tieto údaje zvyknú nachádzať v jednej tabuľke a nie v dvoch oddelených
Zdroje • http://www.ipower.sk/dbs/ • http://www.fhi.szm.sk/2005/materialy/dsds/2_DBS_Databazove_systemy.doc • http://programovanie.pc.sk/forum/univerzita/clanok.ltc?ID=284 • http://en.wikipedia.org