Základy návrhu databáze

Základy návrhu databáze

Důležité :  Tento článek je strojově přeložený – přečtěte si toto upozornění. Anglickou verzi tohoto článku pro referenci najdete tady.

Správně navržená databáze poskytuje přístup k informacím o aktuální a přesné. Protože správný návrh je nezbytné k dosažení výsledků při práci s databází, požadovaných vhodné naučit se zásadami dobrý návrh. Nakonec mívají mnohem víc nakonec znamenat databázi, která odpovídá vašim potřebám a můžete snadno v ní provádět změny.

Tento článek obsahuje pokyny pro plánování počítačové databázi. Se dozvíte, jak se rozhodnout, jaké informace budete potřebovat, jak se tyto informace rozdělit do příslušných tabulek a sloupců a jak tyto tabulky se vztahují k sobě. Tento článek by si přečíst, před vytvořením první desktopové databáze.

Důležité : Access poskytuje prostředí návrhu, které umožňují vytvářet databázové aplikace pro Web. Navrhování mnoho se liší při navrhování pro Web. Tento článek se nezabývá návrhu webové databáze aplikace. Další informace naleznete v článku vytvoření databáze pro sdílení na webu.

V tomto článku

Některé termíny databáze vědět

Co je dobré databázi?

Procesu návrhu

Určení účelu databáze

Vyhledání a uspořádání požadovaných informací

Rozdělení informací do tabulky

Zapnutí jednotlivých údajů do sloupců

Určení primárního klíče

Vytvoření relací mezi tabulkami

Úprava návrhu

Použití pravidel normalizace


Některé termíny databáze vědět

Access slouží k uspořádání informací do tabulky: seznamy řádků a sloupců připomínající účetní číselník nebo tabulku. Jednoduchý databáze může mít jenom jednu tabulku. Pro většinu databáze budete potřebovat víc než jeden. Například může mít tabulku, která obsahuje informace o produktech, jiné tabulky, která obsahuje informace o objednávky a druhou tabulku s informacemi o zákaznících.

Obrázek znázorňující tři tabulky v datových listech

Každý řádek se nazývá přesněji záznama sloupcích, pole. Záznam je výstižný a konzistentní způsob kombinování informací. Pole je jedna položka informací – typ položky, které se zobrazí v každém záznamu. V tabulce produkty například každý řádek nebo záznam uchovává informace o jednom výrobku. Každý sloupec nebo pole ukládá určitý typ informací o produktu, například název nebo cena.

Začátek stránky

Co je dobré databázi?

Některé zásadám procesu návrhu databáze. První princip je duplicitní informace (neboli redundantních dat) chybný, protože zabírají místo a zvyšují výskyt chyby a nekonzistence. Druhá zásada je správnosti a dokončení informace důležité. Pokud databáze obsahuje nějaké informace nejsou správné, sestavy, které vyžádat informací z databáze taky obsahují nějaké informace nejsou správné. V důsledku toho rozhodnutí, které vytvoříte, které jsou založeny na těchto zpráv bude chybné.

Dobrý návrh databáze patří, proto, že:

  • Vydělí informace do podle předmětu tabulkách a snížit množství nadbytečných dat.

  • Access nabízí informace, které potřebuje spojovat informace v části tabulky podle potřeby.

  • Pomáhá podporovat a zajistit přesnost a integrity informacím.

  • Přizpůsobí zpracování dat a vytváření sestav potřeb.

Začátek stránky

Procesu návrhu

Návrh proces se skládá z následujících kroků:

  • Určení účelu databáze   

    To vám pomůže s přípravou zbývající kroky.

  • Vyhledání a uspořádání požadovaných informací   

    Shromážděte všechny typy informací, které můžete chtít záznam v databázi, třeba název a pořadí číslo výrobku.

  • Dělit informací do tabulek   

    Rozdělte údaje na hlavní entity či předmětů, například produkty nebo objednávky. Každý předmět pak bude tabulky.

  • Převedení jednotlivých údajů na sloupce   

    Rozhodněte, jaké informace chcete uložit v každé tabulce. Každá položka může být pole a jsou zobrazeny jako sloupec v tabulce. Tabulka Zaměstnanci například můžou obsahovat polí, například podle příjmení a datum přijetí.

  • Určete primárního klíče   

    Zvolte každá tabulka primární klíč. Sloupec, který se používá k jednoznačně identifikovat každý řádek je primárním klíčem. Příkladem může být ID produktu nebo ID objednávky.

  • Nastavení relací mezi tabulkami   

    Podívejte se na každou tabulku a zjistíte, jak souvisejících dat v jedné tabulce s daty v jiných tabulkách. Přidání polí do tabulky nebo vytvořte nové tabulky objasnit vztahy podle potřeby.

  • Doladění návrhu   

    Analýza návrhu chyby. Vytvoření tabulky a přidejte pár záznamů ukázkových dat. Zobrazit, pokud se zobrazí výsledky v tabulkách. Udělejte potřebné úpravy v návrhu.

  • Použití pravidel normalizace   

    Použití pravidel normalizace dat zobrazíte, pokud jsou tabulky strukturovány správně. Udělejte potřebné úpravy tabulky.

Začátek stránky

Určení účelu databáze

Je dobré si zapisovat účelu databáze na papír – její účel, jak budete chtít používat a kdo bude používat. Pro malé databáze pro domácí podnikání například můžete napsat něco jednoduché jako "databáze zákazníků udržuje seznam s informacemi o zákaznících pro rozesílání pošty a sestavy." Pokud je databáze složitější nebo používá více lidem, jak často se opakuje v podnikovém nastavení účel snadno může být odstavce nebo více a by měl obsahovat kdy a jak každý uživatel bude používat databázi. Myšlence je také vyvinutý poslání výraz, který může být uvedené během procesu návrhu. Tyto umožňuje údajů zaměřit na své cíle při rozhodování, kteří mají.

Začátek stránky

Vyhledání a uspořádání požadovaných informací

Vyhledání a uspořádání požadovaných informací, začněte u stávající informace. Například zaznamenáváte nákupní objednávky účetní knihy nebo uchováváte údaje zákazníka na formulářích papíru v souboru CAB. Shromážděte tyto dokumenty a seznam jednotlivých typů údaji zobrazenému (například jednotlivá pole, která vyplnit ve formuláři). Pokud už nemáte žádné stávajícího formuláře, představte si, že máte navrhnout tak, aby záznam údajů o zákaznících. Jaké informace byste umístění na formuláři? K čemu pole fill-in by vytvořit? Identifikace a každá z těchto položek seznamu. Předpokládejme například, že uchováváte aktuálně seznamu zákazníků na kartách rejstřík. Zkoumání tyto vizitky, mohou zobrazit, že každé kartě obsahuje zákazníky jméno, adresu, Město, stav, PSČ a telefonní číslo. Každá z těchto položek představuje potenciální sloupec v tabulce.

Při přípravě tento seznam Nedělejte si starosti, jak ho přesný nejdřív. Místo toho seznam všech položek, které vás napadne. Pokud někdo jiný používat databázi, požádejte o své nápady příliš. Seznam můžete upřesnit později.

Dále je třeba zvážit typy sestav nebo korespondence, které můžete chtít vytvořit z databáze. Můžete například vytvořit sestavu prodeje zobrazíte tržeb podle regionů nebo souhrnnou sestavu skladových zásob, která ukazuje úrovně zásoby produktu. Můžete taky generování formulářových dopisů odešlete zákazníky, kteří informovat o prodeji akcích nebo prémiových nabídkách. Vytvořte si sestavu v názor a Představte si, jak bude vypadat. Jaké informace chcete v sestavě umístíte? Seznam jednotlivých položek. Stejně postupujte i v formulářového dopisu a dalších sestav, že které budete chtít vytvářet.

Osoba představující si sestavu skladových zásob produktu

Pojmenování představit sestav a korespondence, které můžete chtít vytvořit budete moci určit položek, které budete potřebovat v databázi. Předpokládejme například, dejte zákazníkům příležitosti vyjádření výslovného souhlasu (nebo kterou mimo) e-mailová aktualizace a chcete vytisknout seznam osob, které se přihlásily. Pořizovat záznam tyto informace, přidejte sloupec "Odeslat e-mail" tabulky zákazníků. Pro jednotlivé zákazníky můžete nastavit pole hodnotu Ano nebo ne.

Požadavek na e-mailové zprávy odešlete zákazníkům navrhne jinou položku, kterou chcete zaznamenat. Když víte, že zákazníka chce dostávat e-mailové zprávy, musíte taky vědět e-mailovou adresu, na kterou jim můžete poslat. Proto budete muset nahrát e-mailovou adresu pro jednotlivé zákazníky.

Má smysl dobré sestavit prototypů jednotlivých sestav nebo výstupních seznamů a zvážit, jaké položky, které potřebujete k vytvoření sestavy. Například při kontrole formulářový dopis několik věcí může být paměti. Pokud chcete zahrnout správné oslovení – například řetězec "Paní", "Paní" nebo "Paní", který se spustí pozdrav, budete muset vytvořit položku pozdrav. Také můžete začít dopis s "Vážený paní Miklus", nikoli "Vážený. Paní křestního". To o tom, že budete chtít obvykle obsahují nezávislá na křestní jméno příjmení.

Je klíčové bod pamatovat, že má každý údaj rozdělí nejmenší užitečné části. V případě název, snadno zpřístupnit příjmení zrušíte název na dvě části – křestního jména a příjmení. Sestavy seřadit podle příjmení, například je dobré mít zákazníka ukládat příjmení odděleně. Obecně Pokud chcete seřadit, hledání, výpočet nebo sestava založena na položku informace, by měl vložíte dané položky své vlastní pole.

Myslete na otázky, které že můžete databáze, kterou chcete odpovědět. Například kolik prodejů propagovaného produktu jste uzavřeli minulý měsíc? Kde nejlepší zákazníky live? Kdo je dodavatelem s nejlepším odbytem produkt? Předvídání tyto otázky vám pomůže soustředit se na další položky pořizovat záznam.

Po shromáždění tyto informace, jste připraveni na další krok.

Začátek stránky

Rozdělení informací do tabulky

Rozdělení informací do tabulky, zvolte hlavní entity nebo předmětů. Například po vyhledání a uspořádání informací pro danou databázi prodejní product, seznamu předběžné může vypadat takto:

Rukou psané údaje seskupené do předmětů

Hlavní entity vidět tady jsou produkty, Dodavatelé, Zákazníci a objednávky. Proto dává smysl začít s těmito čtyřmi tabulkami: jedno pro informace o produktech pro informace o dodavatelé, pro třetí o zákaznících a jeden pro informace o objednávky. Přestože nemá úplný seznam, je dobré výchozí bod. Můžete dál upřesní tento seznam, dokud nedosáhnete návrh, která funguje dobře.

Při kontrole nejdřív předběžné seznam položek, nejspíš vás bude rozhodnout, že je umístíte vše v jedné tabulky, nikoli čtyři ukazuje předchozí obrázek. Naučíte se tady důvod, proč to znamená špatný nápad. Zvažte okamžik, tabulka ukazuje tento obrázek:

Obrázek tabulky obsahující produkty a dodavatele

V tomto případě každý řádek obsahuje informace o produktu a jeho dodavatel. Protože může mít mnoho produktů od stejný dodavatel, musí se opakuje tolikrát, kolikrát dodavatel jméno a adresu informace. To zabírá místo na disku. Záznam dodavatele informací pouze jednou do tabulky Dodavatelé a propojit tuto tabulku s tabulkou produkty je mnohem lepší řešení.

Druhý problém s Tento návrh narazit, když potřebujete upravit informace o dodavatel. Předpokládejme například, že budete muset změnit adresu dodavatele. Protože se zobrazí na různých místech, může omylem změníte adresu na jednom místě, ale v žádném případě nezapomeňte ho změnit v ostatních. Záznam dodavatele adresu v jen na jednom místě řeší potíže.

Při návrhu databáze snažte zaznamenávat každý fakt jenom jednou. Pokud zjistíte, opakující se stejné informace ve víc než jednom místě, například adresu konkrétního dodavatele, umístěte tyto informace do tabulky.

Předpokládejme, existuje pouze jeden produkt poskytnutých Coho Winery a chcete-li odstranit produkt, ale zachovat informace o Dodavatel název a adresa. Jak by odstraníte záznam produktu a nepřijít také informace? Nejde. Protože každý záznam obsahuje údaje o produktu i o dodavateli, není možné odstranit aniž by odstranil druhé. Pokud chcete oddělit tyto skutečnosti musí rozdělíte jedné tabulky do dvou: jednu tabulku pro informace o produktu a druhou tabulku Dodavatel informace. Odstranění záznamu produktu měli odstranit jenom informace o produktu, ne údaje o dodavatel.

Jakmile jste vybrali předmět, který je znázorněn tabulky, sloupce v této tabulce mají ukládat pouze informace o předmět. V tabulce product by například ukládat jenom o produktech. Protože adresa dodavatele je údaj o dodavateli a nikoli o produktu, patří v tabulce Dodavatel.

Začátek stránky

Zapnutí jednotlivých údajů do sloupců

Při určování sloupců v tabulce, rozhodněte, jaké informace musíte sledovat informace o předmět zaznamenané v tabulce. Například pro tabulku Zákazníci jméno, adresa, Město stát PSČ, odeslat e-mail, oslovení a e-mailovou adresu zahrnují vhodný počáteční seznam sloupců. Každý záznam v tabulce obsahuje stejné sloupce, tak, aby se mohou být uloženy jméno, adresu, Město stát PSČ, odeslání e-mailové, oslovení a e-mailovou adresu pro každý záznam. Například adresu sloupec obsahuje adresy zákazníků. Každý záznam obsahuje data o jednom zákazníkovi a pole Adresa obsahuje adresu zákazníka.

Jakmile jste usoudili počáteční sadou sloupce pro každou tabulku, můžete upřesnit sloupce. Například má smysl ukládat jméno zákazníka dvou samostatných sloupců: křestního jména a příjmení, jméno tak, aby bylo možné řadit, hledání a indexování na pouze tyto sloupce. Podobně adresu tvořena pět komponent adresy, Město, stav, PSČ a země/oblasti a také má smysl ukládat v samostatných sloupcích. Pokud chcete vyhledávání, operací filtrování nebo řazení podle států, třeba potřebujete informace o stavu uložených v samostatné sloupce.

Zvažte taky jestli databázi bude obsahovat informace, které jsou vnitrostátní počátku pouze nebo mezinárodní stejně. Například pokud chcete ukládat zahraniční adresy, je lepší oblast sloupce místo stavu, protože tento sloupce vejdou vnitrostátní států a oblastí jiných zemí nebo oblastí. Podobně PSČ smysl více než PSČ Pokud přecházíte ukládat zahraniční adresy.

V následujícím seznamu je uvedeno několik tipů pro určení sloupců.

  • Nezahrnovat vypočítaná data   

    Ve většině případů neměli ukládat výsledek výpočty v tabulkách. Místo toho aplikace Access může provádět výpočty, když budete chtít podívat na výsledek. Předpokládejme například, že je produkty na pořadí sestavu, která zobrazuje souhrn jednotky na objednávky pro každou kategorii produktů v databázi. V tabulce je ale žádné jednotky subtotal sloupec. Místo toho tabulka produkty obsahuje jednotky sloupce obsahujícího jednotka na objednávky pro každý produkt. Pomocí těchto dat aplikace výpočtu v aplikaci Access Mezisoučet pokaždé, když je vytisknout. Mezisoučet samotný by neměly být uloženy v tabulce.

  • Uložení informací v nejmenších logických částí   

    Možná budete chtít jedno pole jména a příjmení nebo názvy produktů spolu s popisy produktů. Kombinování víc než jeden typ informací v poli je obtížné později vyvolat jednotlivé údaje. Zkuste rozdělit informace do logických celků. Například vytvořte samostatné pole pro jméno a příjmení nebo název produktu, kategorie a popis.

Obrázek znázorňující položky informací během procesu návrhu

Po úpravě sloupců dat v každé tabulce, budete chtít zvolte každá tabulka primární klíč.

Začátek stránky

Určení primárního klíče

Každou tabulku by měl obsahovat sloupce nebo nastavení sloupců, které jednoznačně identifikuje každý řádek uložené v tabulce. To je často jedinečný identifikační číslo, například identifikační číslo zaměstnance nebo pořadové číslo. V databázi terminologii tyto informace se nazývá primárního klíče tabulky. Access primární klíče slouží k rychlému přidružení dat z více tabulek a shromáždit data.

Pokud už máte jedinečný identifikátor tabulky, například číslo výrobku, které jednoznačně identifikuje každý produkt v katalogu, můžete tento identifikátor jako primární klíč v tabulce – ale jenom v případě, že hodnoty v tomto sloupci vždycky různých pro každý záznam. Primární klíč nemůže obsahovat duplicitní hodnoty. Například nepoužívejte jména lidí jako primární klíč, protože nejsou jedinečné názvy. Snadno může mít dva lidé se stejným názvem ve stejné tabulce.

Primární klíč musí vždy obsahovat hodnotu. Pokud hodnota sloupce, může být nepřiřazené nebo Neznámý (chybějící hodnotu) nastane okamžik, nelze použít jako součást primárního klíče.

Vždy byste měli zvolit primární klíč, jejichž hodnota se nezmění. V databázi, která používá více než jednu tabulku primárního klíče tabulky lze použít v jiných tabulkách. Změní-li primární klíč, aby se změna musí použít taky všude, kde se odkazuje klávesu. Pomocí primární klíč, která se nemění snižuje pravděpodobnost, že primární klíč se může stát se nesynchronizují s jinou tabulkou, které odkazují na to.

Často libovolné jedinečné číslo slouží jako primární klíč. Můžete třeba přiřadit každé objednávce jedinečné číslo. Číslo pořadí pouze slouží k identifikaci smysluplném pořadí. Po přiřazení, nikdy změní.

Pokud nemáte na paměti, sloupce nebo skupiny sloupců, které mohou vhodný primární klíč, zvažte použití sloupec, který má datový typ Automatické číslo. Když použijete datový typ Automatické číslo, Access automaticky přiřadí hodnotu za vás. Tento identifikátor je neobsahuje údaje; neobsahuje žádné konkrétní informace popisující řádek, který ho představuje. Neobsahuje údaje identifikátory jsou ideální pro použití jako primární klíč, protože se nezmění. Primární klíč, který obsahuje údaje o řádek – telefonní číslo nebo jméno zákazníka, například – je pravděpodobnost změnit, protože konkrétní informace se mohou měnit.

Obrázek tabulky Výrobky s polem primárního klíče

1. na sloupec datový typ Automatické číslo často zajišťuje vhodný primární klíč. Žádné dva product ID jsou stejné.

V některých případech je vhodné použít dvě nebo více polí, které dohromady, poskytovat primární klíč tabulky. Třeba byste tabulce Rozpis objednávek, který ukládá řádkové položky objednávky pomocí dvou sloupců v jeho primární klíč: ID objednávky a ID produktu. Když primární klíč využívá víc než jednoho sloupce, zkratka složeného klíče.

Pro databázi prodeje produktů, můžete vytvořit sloupec typu Automatické číslo pro každou z tabulky, které budou sloužit jako primární klíč: ProductID tabulky produkty, ID objednávky pro objednávky tabulku, CustomerID pro tabulku Zákazníci a ID dodavatele pro tabulku Dodavatelé.

Obrázek znázorňující položky informací během procesu návrhu


Začátek stránky

Vytvoření relací mezi tabulkami

Teď máte dělení informace do tabulek, musíte umožňuje shromáždit informace znovu přehledně. Například následující formulář obsahuje informace z několika tabulek.

Formulář Objednávky

1. Informace v tomto formuláři pocházejí z tabulky Zákazníci...

2... tabulka Zaměstnanci .z...

3... .z tabulky objednávky …

4... .z tabulky produkty …

5... .a tabulce Rozpis objednávek.

Přístup je systému správy relační databáze. Relační databáze rozdělíte informace do samostatných, podle předmětu tabulek. Pomocí relací mezi tabulkami pak shromáždit informace podle potřeby.

Začátek stránky

Vytvoření relace 1: n

Zvažte tento příklad: databázi objednávek tabulky dodavatele a produkty v produktu. Dodavatel můžete zadat libovolný počet produktů. To znamená, že pro každého dodavatele uvedeného v tabulce Dodavatelé můžete existovat celá řada produktů zaznamenaných v tabulce produkty. Relace mezi tabulkami Dodavatelé a tabulky produkty je proto-n relace.

Koncepční fáze jedna ku mnoha

Znázornit-n relace v návrhu databáze prohlédněte primárního klíče na straně "1" relace a přidal jako nějaký další sloupec nebo sloupce do tabulky na straně "n" relace. V tomto případě například přidáte sloupec ID dodavatele z tabulky Dodavatelé tabulky produkty. Access pak můžete číslo ID v tabulce Produkty vyhledat správného dodavatele pro každý produkt.

Sloupec ID dodavatele v tabulce výrobků se nazývá cizího klíče. Cizí klíč je primární klíč jiné tabulky. Sloupec ID dodavatele v tabulce produkty je cizí klíč, protože je také primární klíč v tabulce Dodavatelé.

Obrázek znázorňující položky informací během procesu návrhu

Základem pro vytvoření dvojic primárních a cizích klíčů spojování souvisejících tabulek. Pokud si nejste jisti, tabulky, které by měly sdílet běžné sloupec, identifikační-n relace zajistíte, že dvě tabulky zahrnuté bude, ve skutečnosti vyžadovat sdílený sloupec.

Začátek stránky

Vytvoření relace n: n

Zvažte vytvoření relace mezi tabulkou produkty a tabulky objednávky.

Jeden pořadí může obsahovat víc produktů. Na druhé straně jednotlivým produktům mohou zobrazovat na mnoha objednávky. Proto pro každý záznam v tabulce objednávky může existovat více záznamů v tabulce produkty. A pro každý záznam v tabulce produkty může existovat více záznamů v tabulce objednávky. Tento typ relace se nazývá n: n: n, protože pro každý produkt může být mnoho objednávky; a pro každou objednávku může být mnoho produktů. Všimněte si, že zjišťování-n relace mezi tabulkami, je důležité zvážit obě strany relace.

Předměty ve dvou tabulkách – objednávky a produkty, mají-n relace. To představuje problém. Znát problém Představte si, co by stát, pokud jste se pokusili vytvořit relace mezi dvěma tabulkami přidáním pole ID produktu v tabulce Orders. Chcete-li více než jeden produkt každou objednávku, musíte více než jeden záznam v tabulce objednávky pro každou objednávku. By opakováním informace o objednávce pro každý řádek, který se vztahuje k jedné objednávce – výsledkem neefektivní návrh, který může vést k nesprávná data. Spustíte ke stejnému problému, pokud vložíte pole ID objednávky tabulky produkty, budou mít víc než jeden záznam v tabulce výrobků pro každý produkt. Jak se tento problém vyřešit?

Odpověď se má vytvořit tabulku třetí někdy označovány jako tabulku spojení, které rozdělí n: n: n na dvě-n relace. Vložení primární klíč z každé z obou tabulek do třetí tabulky. Třetí tabulky v důsledku toho záznamů každý výskyt, případně výskyt relace.

Relace typu N:N

Každý záznam v tabulce Rozpis objednávek představuje jeden řádkové položky ve smysluplném pořadí. Primární klíč v tabulce Rozpis objednávek se skládá ze dvou polí – cizích klíčů z tabulek výrobky a objednávky. Pomocí pole ID objednávky samotný nefunguje jako primární klíč pro tuto tabulku, protože jeden pořadí můžete obsahujících mnoho položek řádku ID objednávky se opakuje pro jednotlivé položky ve smysluplném pořadí tak, aby pole neobsahuje jedinečné hodnoty. Pomocí pole ID výrobku samotný nefunguje, protože jeden produkt, se objeví na mnoha různých objednávek. Ale dohromady, dvě pole vždy vytvoří jedinečnou hodnotu pro každý záznam.

V databázi prodeje produktu v tabulce objednávky a tabulky produkty netýkají vzájemně přímo. Místo toho jsou spojeny nepřímo prostřednictvím tabulce Rozpis objednávek. Relace n: n mezi objednávky a produkty je uložená v databázi pomocí dvou-n relace:

  • Tabulky objednávky a Rozpis objednávek mít-n relace. Každou objednávku může obsahovat více než jednu položku řádku, ale jednotlivé položky je připojen k jedinou pořadí.

  • Tabulka produkty a tabulce Rozpis objednávek mít-n relace. Každý produkt můžete obsahujících mnoho položek řádku přidružená, ale jednotlivé položky odkazuje pouze jeden produkt.

V tabulce Rozpis objednávek můžete zjistit všech produktů v určitém pořadí. Můžete také určit všech objednávek pro určitý produkt.

Po začlenění tabulce Rozpis objednávek, seznam tabulek a polí může vypadat třeba takto:

Obrázek znázorňující položky informací během procesu návrhu


Začátek stránky

Vytváření relací

Jiný typ relace se relaci. Předpokládejme například, že budete muset nahrát některé speciální doplňkové informace o produktech, které budete potřebovat jen zřídka nebo které se týkají pouze několika produktů. Vzhledem k tomu, abyste nemuseli informace často a ukládání informací do tabulky produkty by vedla na prázdné místo pro každý produkt, ke kterému se nevztahuje, umístěte do tabulky. Stejně jako tabulky Produkty použijete jako primární klíč ProductID. Vztah mezi tuto doplňkové tabulku a v tabulce Product je relaci. Pro každý záznam v tabulce Product existuje jeden záznam v tabulce doplňkové. Při určování relace, obě tabulky sdílejí jejich společného pole.

Při zjišťování nutnosti relaci v databázi, zvažte, zda můžete shromáždit informace ze dvou tabulek do jedné tabulky. Pokud nechcete to udělat z nějakého důvodu, možná vzhledem k tomu, že by vedla v několika prázdné místo v následujícím seznamu ukazuje, jak znázornit vztahy v návrhu:

  • Máte dvě tabulky se stejným předmětem, můžete pravděpodobně nastavit vztah pomocí v obou tabulkách stejný primárního klíče.

  • Různých tématech s jinou primární klíče: máte dvě tabulky vyberte jednu z tabulky (jedné) a vložte její primární klíč v tabulce druhé jako cizí klíč.

Určení relace mezi tabulkami vám pomáhá zajistit, aby měli správné tabulek a sloupců. Pokud existuje relace 1: 1 nebo n tabulky zahrnuté nutné sdílet společný sloupec nebo sloupce. Pokud existuje-n relace, třetí tabulka potřebná pro vyjádření relace.

Začátek stránky

Úprava návrhu

Až budete mít tabulek, polí a relace potřebujete, měli vytvoříte a naplnění tabulky s ukázkovými daty a zkuste si pohrát s informacemi o: vytváření dotazů, přidávání nových záznamů a tak dál. Tím usnadníte zvýraznění potenciálních problémů – například zřejmě nutné přidat sloupce, který zapomněli jste Vložit fázi návrhu nebo máte tabulku, která by měla rozdělíte do dvou tabulek odebrat duplicity.

Zjistěte, pokud databázi můžete získat odpovědi, které chcete. Vytvoření koncepty formulářů a sestav a zjistěte, zda zobrazují data, který očekáváte. Najděte nepotřebných duplikování dat a až najdete některé změnit návrh a odstraňte ji.

Jak si vyzkoušet počáteční databáze, pravděpodobně zjistíte, místnosti zlepšení. Pokud chcete zkontrolovat několik věcí:

  • Zapomněli jste všechny sloupce? Pokud ano, patří informace do existující tabulky? Je-li informace o něco jiného, budete muset vytvořit jiné tabulky. Vytvoření sloupce pro všechny položky informací, které chcete sledovat. Pokud informace nelze vypočítat z jiných sloupců, je pravděpodobné, že byste potřebovali nového sloupce pro něj.

  • Jsou všechny sloupce nepotřebných vzhledem k tomu můžete vypočítat z existujících polí? Pokud položku informací můžete vypočítat z jiných stávajících sloupců – vypočítat slevu z prodejní cenu, například – je vhodnější na právě a nevytvářejte nový sloupec.

  • Zadáváte opakovaně duplicitní informace v jednom z tabulky? Pokud ano, bude pravděpodobně nutné rozdělení tabulky do dvou tabulek, které mají-n relace.

  • Máte tabulek s mnoho polí, omezený počet záznamů a mnoho prázdné pole v jednotlivých záznamů? Pokud ano, rozmyslete si návrhu tabulky tak, aby měl méně polí a další záznamy.

  • Obsahuje všechny požadované informace položky byly rozdělené nejmenší užitečné části? Pokud potřebujete zprávu, seřadit, hledání nebo vypočítat na položku informace, vloženého do samostatného sloupce.

  • Každý sloupec obsahuje údaj o předmětu tabulky? Pokud sloupec neobsahuje informace o předmětu tabulky, patří v jiné tabulce.

  • Jsou všechny relace mezi tabulkami představující společných polí nebo třetí tabulky? Relace typu 1: 1 a 1 n vyžadují společné sloupce. Relace n: n vyžadují třetí tabulky.

Úprava tabulky produkty

Předpokládejme, že každý produkt v databázi prodejní product spadá v části obecné kategorii, třeba nápojů, kořením nebo ryby. Tabulka produkty může obsahovat pole zobrazující kategorii produktů.

Předpokládejme, že po zkoumání a úprava návrhu databáze se rozhodnete uložit popis kategorie spolu s jeho název. Pokud přidáte pole Popis kategorie tabulky produkty, budete muset zopakovat popis jednotlivých kategorií pro každý produkt, která spadají do kategorie – to je dobré řešení.

Lepší řešení je kategorie nové předmět databáze, který chcete sledovat, pomocí své tabulky a vlastním primárního klíče. Můžete pak přidáte primární klíč z tabulky kategorie tabulky produkty jako cizí klíč.

Tabulky kategorie a produkty mají vztah n: kategorie může obsahovat více produktů, ale produkt patří pouze jedné kategorii.

Při kontrole struktury tabulky za pozor opakující se skupiny. Zvažte například tabulka, která obsahuje následující sloupce:

  • ID produktu

  • Název

  • ID produktu 1

  • Název1

  • ID produktu 2

  • Název2

  • ID produktu 3

  • Name3

Každý produkt následuje opakující se skupiny sloupců, které se liší od ostatních pouze přidáním čísla za účelem název sloupce. Pokud se zobrazí sloupce číslované tímto způsobem, byste měli návrhu.

Takový návrh obsahuje několik chyby. Udělit vynutí umístit horní mez na počet produktů. Hned překročíte toto omezení, musíte přidat novou skupinu sloupců strukturu tabulky, což je hlavní Správce úloh.

Jiný problém se, zda dodavatelé, jež mají méně než maximálního počtu produktů se zbytečně místo, protože další sloupce bude prázdná hodnota. Většina vážně chyba se změnami návrhu je, že má mnoho úkolů obtížné provést, třeba řazení nebo indexování tabulky podle ID produktu nebo jméno.

Vždy, když se zobrazí opakující se, že skupin Kontrola návrhu úzce u sledovat rozdělení tabulku do dvou. V tomto příkladu, který je lepší pomocí dvě tabulky, jeden pro dodavatele a jeden pro produkty spojených ID dodavatel.

Začátek stránky

Použití pravidel normalizace

V návrhu můžete použít pravidla normalizace dat (někdy označovaný normalizace pravidla) jako dalším krokem. Pomocí těchto pravidel zobrazíte, pokud jsou tabulky strukturovány správně. Proces používání pravidel pro návrh databáze se nazývá normalizace databáze, nebo pouze normalizace.

Normalizace je nejužitečnější po všechny položky informací a příchod v předběžné návrhu. Cílem je týkající se ujistěte, že máte dělení údaje do příslušných tabulek. Normalizace nemůžete dělat je zajistit, aby na začátku jsou všechny položky správná data.

Použití pravidel postupně, každý krok zajistí, které přichází návrhu v jednom z takzvanou "normální formuláře,." Pět normální formuláře široce přijaté – první normální formulář pomocí pátý normální formuláře. Tento článek rozšiřuje první tři, protože jsou všechny, který je potřebný pro většinu označovaných.

První normální formulář

První normální formulář je uvedeno, že v každé průsečíku řádku a sloupce v tabulce, existuje jednu hodnotu a nikdy seznamu hodnot. Například nesmí obsahovat pole s názvem cena, ve kterém umístíte víc cena. Pokud si myslíte o každé průsečík řádků a sloupců jako buňku, buňky, můžou obsahovat jedinou hodnotu.

Druhý normální formulář

Druhý normální formulář vyžaduje, aby každý sloupec oblasti není klíč plně závislých celý primární klíč, nikoli pouze část klíče. Pokud chcete toto pravidlo se týká primární klíč, která obsahuje více než jednoho sloupce. Předpokládejme například, že máte tabulka, která obsahuje následující sloupce, které ID objednávky a kód výrobku formulář primárního klíče:

  • ID objednávky (primárního klíče)

  • ID produktu (primárního klíče)

  • Název produktu

Tento návrh porušuje druhý normální formulář, protože název produktu závisí na ID výrobku, ale ne na ID objednávky, takže není závisí na celý primární klíč. Je třeba odebrat název produktu v tabulce. Patří v jiné tabulce (produkty).

Třetí normální forma

Třetí normální formulář vyžaduje, aby nejen každý sloupec není klíč závisí na celý primární klíč, ale, že není klíč sloupce nezávisle na sobě.

Jinými slovy to je, že je každý sloupec oblasti není klíč závislá na primární klíč a žádné jiné primární klíč. Předpokládejme například, že máte tabulku obsahující následující sloupce:

  • Idproduktu (primárního klíče)

  • Název

  • SRP

  • Sleva

Předpokládejme, že sleva závisí na navrhované prodejní cenu (SRP). V této tabulce rozporu třetí normální formuláře, protože není klíč sloupce, diskont_sazba, závisí na jiný sloupec – klíč – SRP. Sloupec nezávislosti znamená, že by měl být provádění změn žádný sloupec není klíč beze změny jakýkoli jiný sloupec. Pokud změníte hodnotu v poli DMC, sleva by měnit, čímž poruší toto pravidlo. V tomto případě diskontní by měl být přesunutý do jiné tabulky, který je nastaven na SRP.

Začátek stránky

Poznámka : Upozornění ke strojovému překladu: Tento článek přeložil počítačový systém bez zásahu člověka. Společnost Microsoft nabízí tyto strojové překlady proto, aby umožnila uživatelům, kteří nemluví anglicky, získat informace o produktech, službách a technologiích této společnosti. Protože je tento článek strojově přeložený, může obsahovat slovní, syntaktické nebo gramatické chyby.

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×