Relační databázová technologie

Podobné dokumenty
Relační databázová technologie

A5M33IZS Informační a znalostní systémy. Relační databázová technologie

Relace x vztah (relationship)

C8 Relační databáze. 1. Datový model

A5M33IZS Informační a znalostní systémy. O čem předmět bude? Úvod do problematiky databázových systémů

Databáze. Logický model DB. David Hoksza

Úvod do databázových systémů 6. cvičení

Úvod do databázových systémů

Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava. Úvod do databázových systémů 2012/2013 IS MHD

Primární klíč (Primary Key - PK) Je právě jedna množina atributů patřící jednomu z kandidátů primárního klíče.

Úvod do databázových systémů 2012/2013 IS MHD. Jiří Znoj zno

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal

Konceptuální datové modely používané při analýze

Transformace konceptuálního modelu na relační

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi.

Databáze I. Přednáška 2

Terminologie v relačním modelu

Obsah přednášky. Databázové systémy RDBMS. Fáze návrhu RDBMS. Coddových 12 pravidel. Coddových 12 pravidel

5. POČÍTAČOVÉ CVIČENÍ

Databáze 2013/2014. Konceptuální model DB. RNDr. David Hoksza, Ph.D.

Primární klíč, cizí klíč, referenční integrita, pravidla normalizace, relace

Relační databáze. V dnešní době existuje řada komerčních DBMS, nejznámější jsou:

Konceptuální modelování. Pavel Tyl

Konceptuální modelování a SQL

DATOVÉ MODELOVÁNÍ ER MODEL

Úvod do databázových systémů

Obsah přednášky. Databázové systémy. Normalizace relací. Normalizace relací. Normalizace relací. Normalizace relací

8.2 Používání a tvorba databází

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

Návrh databázového modelu

Microsoft. Access. Databáze s více tabulkami. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph)

Objektově relační databáze a ORACLE 8

Databázové systémy. Cvičení 2

Databáze I. Přednáška 7

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR):

Databázové systémy. Vztahy a relace. 3.přednáška

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.

Relační databázový model. Vladimíra Zádová, KIN, EF, TUL- DBS

Database engine (databázový stroj, databázový motor, databázové jádro) Systém řízení báze dat SŘBD. Typy SŘBD podle způsobu práce s daty

DBS Konceptuální modelování

2 Konceptuální modelování a návrh databáze

2 Konceptuální modelování a návrh databáze

Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky.

Databáze I. Přednáška 4

VŠB FEI - Technická Univerzita Ostrava. DAIS - Projekt. Dopravní podnik. Jméno: Matěj Kotyz (KOT0177)

Funkční schéma Datové schéma Integrita modelu s realitou

DBS Transformace konceptuálního schématu na

Kapitola 6: Omezení integrity. Omezení domény

Databázové modelování. Analýza Návrh konceptuálního schématu

DUM 12 téma: Příkazy pro tvorbu databáze

S databázemi se v běžném životě setkáváme velmi často. Uvádíme běžné použití databází velkého rozsahu:

Databázové systémy. Datová integrita + základy relační algebry. 4.přednáška

Databázové systémy. Ing. Radek Holý

Access. Tabulky. Vytvoření tabulky

Databáze I. 4. přednáška. Helena Palovská

Databázové systémy Cvičení 5.2

Datové modelování II

VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ

Střední průmyslová škola Zlín

Informační systémy ve zdravotnictví. 6. cvičení

Databázové systémy. Dátové modelovanie - relačný model

Databáze Agility. Obsah. Strana číslo: {00}

Kapitola 2: Entitně-vztahový model (Entity-Relationship model) Množiny entit (entitní množiny) Atributy

Hierarchický databázový model

RNDr. Jakub Lokoč, Ph.D. RNDr. Michal Kopecký, Ph.D. Katedra softwarového inženýrství Matematicko-Fyzikální fakulta Univerzita Karlova v Praze

Teorie zpracování dat DATABÁZOVÁ TECHNOLOGIE

Informační systém pro nemocnici

Informační systémy a datové sklady IS uměleckých galerií Analýza datového skladu

Materiál byl vytvořen v rámci projektu Nové výzvy, nové příležitosti, nová škola

KIV/ZIS cvičení 1. Martin Kryl

B0M33BDT Technologie pro velká data. Supercvičení SQL, Python, Linux

Otázka č. 1 (bodů za otázku: 4)

KIV/ZIS - primární klíč

POKROČILÉ POUŽITÍ DATABÁZÍ

Access Tabulka letní semestr 2013

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS

Data v informačních systémech

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

Relační datový model. Integritní omezení. Normální formy Návrh IS. funkční závislosti multizávislosti inkluzní závislosti

Relační model reprezentuje databázi jako soubor relací. Kaţdá relace představuje tabulku nebo soubor (ve smyslu soubor na nosiči dat).

10. blok Logický návrh databáze

Databázové systémy. Tomáš Skopal. - úvod do relačního modelu. - převod konceptuálního schématu do relačního

Úvod do softwarového inženýrství IUS 2009/2010 p.1/30

Transformace ER SQL. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 9

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Kurz Databáze. Obsah. Návrh databáze E-R model. Datová analýza, tabulky a vazby. Doc. Ing. Radim Farana, CSc.

Databázové systémy a SQL

Databázové systémy. Cvičení 3

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky

Databázové systémy. Přednáška 1

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev

Digitální učební materiály


Informační systémy 2008/2009. Radim Farana. Obsah. Obsah předmětu. Požadavky kreditového systému. Relační datový model, Architektury databází

Microsoft. Access. Výběrové dotazy. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie

9 Strukturovaná analýza

Analýza dat a modelování. Přednáška 3

Transkript:

Relační databázová technologie Klíč: množina (možná jednoprvková) atributů (sloupců), jež jednoznačně idetifikuje danou entitu. Poznámky: 1. Daný entitní typ (tabulka) může mít více klíčů může být více. Například (i) rodné číslo, (ii) osobní číslo zaměstnance, (iii) syntetický klíč. 2. Každá tabulka má alespoň jeden klíč. V (opravdové) relační databázi nemůže tabulka obsahovat více řádků s týmiž hodnotami v jednortlivých sloupcích.

Relační databázová technologie Cizí klíč: množina (možná jednoprvková) atributů (sloupců), jejichž hodnota určuje hodnotu klíče jiné tabulky. Poznámky: 1. Datový typ jednotlivých atributů musí být kompatibilní s datovým typem odpovídajících atrinutů klíče referencované tabulky. 2. Cizí klíč není (nemusí být) v dané tabulce klíčem. 3. Vztah mezi entitami se realizuje asociativní vazbou cizí klíč -> primární klíč. 4. Vzhledem k tomu, že tabulka může mít více klíčů, je dobré jeden z nich zvolit a systematicky ho používat k realizaci vztahů s ostatními tabulkami. Takto zvolený klíč nazýváme klíčem primárním.

http://www.sybase.com/products/modelingmetadata/powerdesigner

Převod konceptuální model -> logický model Entitní typ -> tabulka Atribut entitního typu -> sloupec tabulky Vztah: 1:1 nebo 1:N: vztah->cizí klíč na straně N atribut vztahu -> sloupec tabulky na straně N N:M: Vztah -> vazební tabulka Atribut vztahu -> sloupec vazební tabulky

Konceptuální model Logický model

VA30 <M> ma-linky <pi> <M> 1 Slabý entitní typ 1 Notace Crow's Foot

VA30 <M> ma-linky <pi> <M> 1 Slabý entitní typ 1 Notace Crow's Foot

VA30 <M> Slabý entitní typ 1 Notace Crow's Foot DECIMAL(8,0) <pk> VARCHAR(30) DECIMAL(9,0) ma-linky FK_LINKY_RELATIONS_ORGANIZA <pi> <M> 1 1 DECIMAL(9,0) <pk> DECIMAL(8,0) <pk> DECIMAL(8,0) <fk> CHAR(15) CHAR(20)

VA30 <M> Slabý entitní typ 1 Notace Crow's Foot DECIMAL(8,0) <pk> VARCHAR(30) DECIMAL(9,0) ma-linky FK_LINKY_RELATIONS_ORGANIZA Není to divné? <pi> <M> Sloupec IČO<M> tu 1 <pi> DC8,0 2x máme Tento sloupec tu bude 2x 1 DECIMAL(9,0) <pk> DECIMAL(8,0) <pk> DECIMAL(8,0) <fk> CHAR(15) CHAR(20)

VA30 <M> Slabý entitní typ 1 Notace Crow's Foot DECIMAL(8,0) <pk> VARCHAR(30) DECIMAL(9,0) ma-linky FK_LINKY_RELATIONS_ORGANIZA <pi> <M> 1 1 DECIMAL(9,0) <pk> DECIMAL(8,0) <pk> DECIMAL(8,0) <fk> CHAR(15) CHAR(20)

Slabý entitní typ 2 VA30 <M> ma-linky <pi> <M> 1

Slabý entitní typ 2 VA30 <M> <pi> <pi> DC8,0 DC8,0 <M> <M> VA30 VA30 <M> <M> ma-linky <pi> <M> 1 ma-linky <pi> <pi> <M> <M>

Řídící entitní typslabý entitní typ 2 VA30 <M> <pi> <pi> DC8,0 DC8,0 <M> <M> VA30 VA30 <M> <M> ma-linky ma-linky Slabý entitní typ <pi> <M> 1 11111111 Nemocnice Motol 224 43 22222222 Honda Motol 234 09 Identifikující vztah (vazba) <pi> <pi> <M> <M> 11111111 11111111 11111111 22222222 22222222 1111 2920 2101 1111 6690 Ústředna Kardiocentrum Novorozenecké oddělení Recepce Prodej nových vozů

Slabý entitní typ 3 VA30 <M> ma-linky DECIMAL(8,0) <pk> VARCHAR(30) DECIMAL(9,0) FK_LINKY_MA-LINKY_ORGANIZA <pi> <M> DECIMAL(8,0) <pk,fk> DECIMAL(9,0) <pk> CHAR(15) CHAR(20)

Slabý entitní typ 4 DECIMAL(8,0) <pk> VARCHAR(30) DECIMAL(9,0) FK_LINKY_MA-LINKY_ORGANIZA DECIMAL(8,0) <pk,fk> DECIMAL(9,0) <pk> CHAR(15) CHAR(20)

Reflexivní vztah 1 matka ma-matku Osoba Rodne-cislo <pi> DC10,0 <M> Jmeno Prijemni dítě dítě FK_OSOBA_RELATIONS_OSOBA Osoba Rodne-cislo Oso_Rodne-cislo Jmeno Prijemni DECIMAL(10,0) <pk> DECIMAL(10,0) <fk> CHAR(15) CHAR(20) matka

Reflexivní vztah 1 matka ma-matku Osoba Rodne-cislo <pi> DC10,0 <M> Jmeno Prijemni dítě Reflexive mandatory reference A reflexive reference exists should not have a mandatory FK_OSOBA_RELATIONS_OSOBA parent which could lead to inconsistent joins. dítě Osoba Rodne-cislo Oso_Rodne-cislo Jmeno Prijemni DECIMAL(10,0) <pk> DECIMAL(10,0) <fk> CHAR(15) CHAR(20) matka

Reflexivní vztah 2 dítě ma-matku Osoba Rodne-cislo <pi> DC10,0 <M> Jmeno Prijemni matka Nepovinná hodnota cizího klíče matka FK_OSOBA_RELATIONS_OSOBA Osoba Rodne-cislo Oso_Rodne-cislo Jmeno Prijemni DECIMAL(10,0) <pk> DECIMAL(10,0) <fk> CHAR(15) CHAR(20) dítě

Reflexivní vztah 2 dítě Nepovinná hodnota cizího klíče ma-matku Osoba Rodne-cislo <pi> DC10,0 <M> Jmeno Prijemni matka matka FK_OSOBA_RELATIONS_OSOBA Osoba Rodne-cislo Oso_Rodne-cislo Jmeno Prijemni DECIMAL(10,0) <pk> DECIMAL(10,0) <fk> CHAR(15) CHAR(20) dítě

Reflexivní vztah 2 dítě ma-matku Osoba Rodne-cislo <pi> DC10,0 <M> Jmeno Prijemni matka matka FK_OSOBA_RELATIONS_OSOBA Osoba Rodne-cislo Oso_Rodne-cislo Jmeno Prijemni DECIMAL(10,0) <pk> DECIMAL(10,0) <fk> CHAR(15) CHAR(20) dítě

Referenční integrita 1 Mějme dvě tabulky A a B takové, že tabulka B obsahuje cizí klíč odkazující to tabulky A. V databázi nesmí dojít k tomu, že pro nějaký řádek tabulky B odkazuje jeho hodnota cizího klíče na neexistující řádek tabulky A.

Referenční integrita 2 Strelna_zbran Osoba Rodne_cislo <pi> <UNDEF> <M> Jmeno <UNDEF> Prijmeni <UNDEF> drzitel Vyrobni_cislo <pi> <UNDEF> <M> Vyrobce <pi> <UNDEF> <M> T yp <UNDEF> Popis <UNDEF> Jak může dojít k porušení referenční integrity? a) Zrušíme záznam v tabulce Osoba => cizí klíč příslušného řádku tabulky Zbran bude odkazovat na neexistující řádek tabulky Osoba. b) Změníme hodnotu primárního klíče některého řádku v tabulce Osoba => cizí klíč příslušného řádku tabulky Zbran bude odkazovat na neexistující řádek tabulky Osoba.

Referenční integrita 3 Strelna_zbran Osoba Rodne_cislo <pi> <UNDEF> <M> Jmeno <UNDEF> Prijmeni <UNDEF> drzitel Vyrobni_cislo <pi> <UNDEF> <M> Vyrobce <pi> <UNDEF> <M> T yp <UNDEF> Popis <UNDEF>

Referenční integrita 4