Přeskočit navigaci | Přeskočit na novinky

Jste zde: Úvodní stránka » access » tabulky » relace-vazby-v-databazich-teorie

Relace v databázích - teorie

genialita v inteligentních relacích (vazbách)

Proč relace

Získejte z tabulek více...

Pokud máte samostatné tabulky, nepotřebujete MS Access, stačí Vám MS Excel. Pokud mezi tabulkami existují logické vazby, Excel již jednoduše nedokáže dvě tabulky logicky provázat. Elegantní a jednoduché spárování tabulek zvládne databázový program. Osobně doporučuji MS Access. Z jednoduchých tabulek tak vytvoříte relační databázi. Relační databáze se správně navrženými relacemi bude ohromnou zbraní. V tomto článku si teoreticky probereme, co relace jsou a jaké druhy relaci existují.

Druhy relací (vazeb)

jak se dělí...

V databázových systémech existuji čtyři druhy relací:

  • Relace 1:1 - nejjednodušší vazba
  • Relace 1:N - Tyto vazby jsou v projektu nejčastější
  • Relace N:M - tuto vazbu je nutno převést relační vazbu 1:N
  • Bez relace - tj. mezi tabulkami není žádný vztah

Nyní si jednotlivé relace (vazby) rozebereme podrobněji.

Relace 1:1

Jednomu záznamu v tabulce odpovídá přesně jeden záznam v druhé tabulce.

Pokud naleznete tuto vazbu tak v databázi nemusí být databáze úplně v pořádku. Ve většině případu se, ale jedná o nevhodně navrženou databázi. Existuje pár výjimek, kdy se toto používá. Relace 1:1 může existovat u tabulek JMENA a BYDLIŠTĚ, kdy každému jménu je přiřazena právě jedna adresa.

Příklad relace 1:1

Tabulka JMENA

id jméno příjmení
1 Jan Vopršálek
2 Jana Nevopršálková
3 Pepa Zdepa

Tabulka BYDLIŠTĚ

id ulice Město
1 Horní Brno
2 Dolní Praha
3 Střední Ostrava

Poznámka: U této tabulky je vhodné sloučit tabulky JMENA a BYDLIŠTĚ do jedné tabulky, třeba s názvem OSOBY

Sloučená tabulka OSOBY

id jméno příjmení ulice město
1 Jan Vopršálek Horní Brno
2 Jana Nevopršálková Dolní Praha
3 Pepa Zdepa Střední Ostrava

Příklad kdy je vhodné tabulku rozdělit

Představte si tabulku OSOBY v databázi personálního oddělení. Kdy pro zahraniční zaměstnance potřebujete další údaje (číslo pasu, doba pobytu, rodný jazyk, rodná Země, bydlišti v cizině). Pokud umístíte tyto údaje do stejné tabulky, budou u českých zaměstnanců výše uvedená pole nevyplněna. Proto se vyplatí tabulku rozdělit na dvě. Tabulka OSOBY DOMACÍ a OSOBY CIZINCI, kdy pro několik cizinců vyplníte ještě druhou tabulku.

Relace 1:N

Jeden záznam v první tabulce odpovídá několika záznamům ve druhé tabulce.

Nejpoužívanější při tvorbě rozsáhlých databázi. Příkladem může být OSOBA a PŘEČTENÉ KNIHY. Jedna osoba může mít přečteno více knih. Viz následující příklad.

Poznámka: Jde o modelový příklad, kdy jedna osoba může mít přečteno více knih. To že některé knihy mohou být uvedeny v tabulce PŘEČTENÉ KNIHY několikrát, nehraje v tomto příkladu roli. Jde o modelové představení relace 1:N.

Příklad relace 1:N

Tabulka OSOBY

id jméno příjmení
1 Jan Vopršálek
2 Jana Nevopršálková
3 Pepa Zdepa

Tabulka PŘEČTENÉ KNIHY

id Kniha
1 Rumcajs
1 Cipísek
1 Maj
1 RUR
3 Ohníček

Poznámka: Vidíme, že Jan Vopršálek je vášnivý čtenář, kdežto Jana Nevopršálková nečte :).

Relace N:M

Více záznamu v první tabulce odpovídá více záznamům v druhé tabulce.

Příkladem vazby N:M jsou knihy a čtenáři. V knihovně je k dispozici obrovské množství knih a mnoho čtenářů. Pokud máme tabulky ČTENÁŘI a KNIHY, tak mezi tabulkou ČTENÁŘI a KNIHY je relace (vazba) N:M. Každý čtenář si může půjčit kteroukoli knihu.

Abychom v databázi mohli s relací (vazbu) N:M pracovat musíme ji převést na relaci (vazbu) 1:N (viz předchozí odstavec). Pro změnu na relaci 1:N je potřeba vytvořit pomocnou (spojovací) tabulku.

Pro změnu vazby N:M na použitelnou vazbu 1:N musíme vytvořit pomocnou tabulku VÝPŮJČKY. Mezi tabulkou ČTENÁŘI a VÝPŮJČKY je relace 1:N a mezi tabulkou VÝPŮJČKY a KNIHY je taktéž relace 1:N. Mezi tabulkami ČTENÁŘI a KNIHY stále existuje vazba N:M. Viz následující příklad.

Příklad relace N:M

Tabulka ČTENÁŘI

id čtenář jméno příjmení
1 Jan Vopršálek
2 Jana Nevopršálková
3 Pepa Zdepa

Tabulka KNIHY

id kniha Název knihy Autor
11 Babička Němcová
12 RUR Karel Čapek
13 Máj K. H. Mácha

Tabulka VÝPŮJČKY

id čtenář id kniha datum výpůjčky datum vracení
1 11 1.1.2010 10.1.2010
1 12 1.1.2010 10.1.2010
1 13 1.1.2010 10.1.2010
2 11 20.1.2010 22.1.2010
3 11 2.2.2010  
3 12 2.2.2010  
1 13 5.2.2010  

Poznámka

Jedná se o ukázkové příklady, sloužící pro pochopení vzájemných relací (vazeb).

Závěrem

Doufám, že jste pochopily, co to jsou relace (vazby). V dalším článku proberu jak relace vytvořit v MS Access 2010.

Článek byl aktualizován: 19.10.2010 20:47



| tisk stránky TISK | nahoru NAHORU |
| |

Další články k tématu



Komentáře


Kašpi

Přidáno: 28.03.12 19:05

Moc hezky vysvětleno ;)


Přidání nového komentáře




(vlož číslo šest)

Z bezpečnostních důvodu dočasně nemůžete použít HTML značky a URL. Děkuji za pochopení.
Děkuji, za Vaše komentáře.

Za obsah komentářů neodpovídám, jelikož jsou komentáře publikovány ihned po jejich napsání čtenářem. Toto nemohu nijak ovlivnit. Přesto si vyhrazuji možnost jakýkoli neslušný komentář smazat bez udání důvodu.




Nejnovější článek

Z článku o access jsem jako poslední přidal či upravil článek 28.04.2012:
VBA - Jak spustit v MS Access.

Nejčtenější článek




Google+

  

Facebook

facebook  

Novinky

Word: 12.5.2012:
Matematické rovnice (vzorce) - Word 2010

Excel: 14.05.2012:
Kombinování funkcí - vzorců

Access: 28.04.2012:
VBA - Jak spustit v MS Access

Power Point: 25.04.2012:
SmartArt - PowerPoint 2010

Outlook 26.04.2012:
Outlook 2010 - jak vypadá

Project: 05.04.2012:
Kalendář ukázka

OneNote: 17.10.2010:
OneNote 2010 – popis obrazovky

Office 30.04.2012:
Kde hledat odpovědi na dotazy o MS Office

Poděkování

Poděkování patří hlavně mojí nejbáječnější manželce.

LinkedIN

Translate

     

Stránky o MS Office produktu společnosti Micosoft. Neslouží jako technická podpora.
| Email na autora: lasak@centrum.cz | Copyright © : Pavel a Danka 2006 - 2012 |
| Doporučuji: Advokátní kancelář Brno - Dana Lasáková | 6618

Tento web zatím neprošel jazykovou korekturou. Beta verze redakčního systému.