sql >> Databáze >  >> RDS >> Mysql

návrh databáze, vytvořit jednu tabulku tak, aby ukazovala několik a nějaký druh rekurzivních ukazatelů

Toto je potenciálně velké databázové schéma, takže se zaměřím pouze na Muskuloskeletální systém. Než se do toho pustím, měl bych zmínit důležitost normalizace databáze. Je to důležité! A to z mnoha důvodů. Návrhem dobré, normalizované databáze si nyní ušetříte problémy a zároveň zajistíte integritu a spolehlivost vašich dat. Vždy mějte vzadu ve své mysli „Jak tato databáze poroste“, „Co když potřebuji přidat další systémy nebo pohledy nebo distribuční vzorce“ atd. Udělejte sobě, svému zaměstnavateli, laskavost a čtěte dále. stručný přehled si můžete přečíst zde:http://databases.about.com/ od/specificproducts/a/normalization.htm

K návrhu databáze:

Chcete ponechat redundantní sloupce a sloupce, které jsou podmnožinami jiných sloupců, mimo tabulku a do její vlastní. Podívejte se například na tabulku lymfatických uzlin. Co když si za rok uvědomíte, že potřebujete přidat další lymfatické uzliny? Nebo jednu odstranit? Nebo co když se díváte pouze na jeden uzel od klienta? Místo toho, abyste to dělali po svém, přivažte stůl k většímu předmětu (nejsem lékař, takže si nejsem jistý, co je to anser), jako je pacient nebo lymfatický systém. Nebo oboje. Příklad:

Pacient má mnoho systémů (vztah mezi tabulkou pacientů a tabulkou systémů) Lymfatický systém má mnoho orgánů (vztah mezi lymfatickým systémem a orgány od jednoho k mnoha) Systém nebo orgán má mnoho testů (vztah jeden k mnoha mezi systémy a testy).

Příklad:

Tato tabulka by měla obsahovat pouze údaje týkající se jednotlivého pacienta

Tato tabulka by měla obsahovat pouze sloupce specifické pro všechny systémy. Systémy mohou být lymfatické systémy, dýchací systémy, vylučovací systémy atd.

TablePatient_TableSystems

Nemůžete mít mnoho nebo mnoho vztahů. Tato tabulka to řeší. Pokud byste to neměli, museli byste v každé tabulce pro každého pacienta/systém uchovávat redundantní záznamy

Rozlišuje mnoho až mnoho pro systémy a orgány

Nyní k testům. Jsou testy specifické pro orgány nebo systémy? Nebo oboje? Tento příklad řekne obojí

Test tabulky

Je toho tady hodně, takže si myslím, že je to dobré místo k zastavení. Přečtěte si normalizaci dat a když budete mít nějaké dotazy, napište sem (nebo mi napište).



  1. Jak vytvořím uživatele postgresql s látkou

  2. Značky JavaScriptu Google Maps API v3 se ne vždy načtou

  3. Oracle 11g:Existuje v PL/SQL nějaký způsob, jak získat informace o vložených a aktualizovaných řádcích po příkazu MERGE DML?

  4. Verze jádra PostgreSQL vs. Linux