Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Software >> Database Software >> Content
Hoe zou u uw database structureren om een ​​stamboom te volgen?
Hier is een databasestructuur voor het volgen van een stamboom, samen met uitleg en overwegingen:

Tabellen:

1. Mensen

- id (int, primaire sleutel) :Unieke identificatie voor elke persoon.

- first_name (varchar) :Voornaam van de persoon.

- last_name (varchar) :Achternaam van de persoon.

- Birth_Date (datum) :Geboortedatum.

- Death_Date (datum) :Datum van overlijden (nietigbaar).

- Geslacht (enum) :Geslacht (bijv. 'Male', 'vrouwelijk', 'andere').

- notities (tekst) :Aanvullende opmerkingen of informatie over de persoon.

2. relaties

- id (int, primaire sleutel) :Unieke identificatie voor elke relatie.

- Person_id (int) :Buitenlandse sleutel die verwijst naar de tabel 'People' (ouder).

- gerelateerd_person_id (int) :Buitenlandse sleutel die verwijst naar de tabel 'mensen' (kind).

- relatie_type (enum) :Type relatie (bijv. 'Ouder', 'kind', 'echtgenoot', 'broer of zus').

- bestelling (int) :Optioneel veld om de volgorde van kinderen bij te houden (voor meerdere kinderen van dezelfde ouders).

3. Plaatsen

- id (int, primaire sleutel) :Unieke identificatie voor elke plaats.

- naam (varchar) :Naam van de plaats (bijv. Stad, stad, land).

- type (enum) :Type plaats (bijv. 'City', 'Country', 'State').

4. gebeurtenissen

- id (int, primaire sleutel) :Unieke identificatie voor elk evenement.

- Person_id (int) :Buitenlandse sleutel naar de tabel 'mensen'.

- event_type (enum) :Type gebeurtenis (bijv. 'Geboorte', 'huwelijk', 'dood').

- event_date (datum) :Datum van het evenement.

- place_id (int) :Buitenlandse sleutel die naar de tabel 'Plaatsen' verwijst.

- notities (tekst) :Aanvullende opmerkingen over het evenement.

Verklaring:

* Mensen tabel: De kerntabel, die basisinformatie over elk individu in de stamboom bevat.

* Relatiestabel: Bepaalt hoe mensen verbonden zijn. Met deze tabel kunt u complexe gezinsstructuren modelleren (bijv. Stiefouders, geadopteerde kinderen, enz.)

* Plaatsen tabel: Biedt informatie over de locaties die verband houden met mensen en gebeurtenissen (bijv. Geboorteplaten, doodslocaties).

* Gebeurtenissen Tabel: Registreert belangrijke gebeurtenissen in het leven van een persoon, zoals geboorte, huwelijk en dood.

Voordelen van deze structuur:

* flexibel: De database is geschikt voor verschillende familiestructuren en relaties.

* schaalbaar: Eenvoudig om nieuwe individuen en evenementen toe te voegen naarmate de stamboom groeit.

* genormaliseerd: Vermindert de redundantie van gegevens en verbetert de efficiëntie.

Overwegingen:

* Gegevenstypen: Kies geschikte gegevenstypen voor elke kolom (bijv. `Int`,` varchar`, `date`,` enum`).

* relaties: Zorg ervoor dat relaties correct worden afgedwongen met behulp van buitenlandse toetsen.

* Normalisatie: Overweeg verdere normalisatie (bijvoorbeeld het maken van afzonderlijke tabellen voor adressen, beroepen) voor grote databases.

* Gegevensinvoer: Ontwikkel een gebruiksvriendelijke interface voor het invoeren van gegevens in de database.

* Visualisatie: Gebruik tools (bijv. Grafische bibliotheken) om de stamboom uit de database te visualiseren.

Voorbeeldquery's:

* Maak een lijst van alle kinderen van een specifieke persoon:

`` `SQL

Selecteer P.First_Name, P.Last_Name

Van mensen p

Doe mee met relaties R op P.ID =R.Related_Person_ID

Waar r.person_id =

En R.Relationship_Type ='Child';

`` `

* Vind alle mensen geboren in een specifieke stad:

`` `SQL

Selecteer P.First_Name, P.Last_Name

Van mensen p

Word lid van evenementen E op P.ID =E.Person_ID

Word lid van plaatsen PL op e.place_id =pl.id

Waar E.Event_Type ='Birth'

En PL.Name ='New York City';

`` `

Opmerking: Dit is een basiskader. Mogelijk moet u tabellen toevoegen of aanpassen op basis van uw specifieke vereisten en de complexiteit van uw stamboom.

Previous: Next:
  Database Software
·Tutorial om een formulier ontw…
·Stadia van de Database Develop…
·Hoe Access Database Design 
·Hoe te Fields AutoFill in Acce…
·Hoe maak je een keuzelijst geb…
·Wat zijn de belangrijkste veld…
·Hoe om te Call Scripts Schrijf…
·Kun je een database maken in M…
·SQL Report Builder Tutorial 
  Related Articles
Welke ontwikkelingstools heb je gebruikt…
Hoe de gegevens kunnen worden opgehaald …
Kun je films van een emachine verbranden…
Hoe krijg je geanimeerde foto's op je bu…
Waar kun je gratis anime -personages op …
Waarom zou u computerondersteunde ontwer…
Wat voor soort bedrijven huren mensen in…
Wat bedoel je met databasestuurprogramma…
Hoe maak je een bureaublad wallpaper met…
  Software Articles
·Hoe kan ik Flash -bestanden bekijken op …
·Hoe kan ik de slag met SQL for Free ? 
·Hoe kan ik corrigeren Mijn omzetbelastin…
·Kan ik Installeer Norton 360 met XP Pro …
·De beste manieren om PDF bestanden te le…
·Toegang geweigerd bij opslaan van het Ex…
·Is pdf hetzelfde als doc? 
·Kleur - hoe Recolor in Photoshop CS3 
·Hoe te schakelen Terug naar het lint in …
Copyright © Computer Kennis https://www.nldit.com