Andmebaasi skeem

Diagramm näitab andmebaasi struktuuri ja tabelite vahelisi seoseid.

Mudelid

  • Olemid – Seosed (Entity – Relationship)
  • Olemid – Atribuudid – Seosed
  • Hierarhiline mudel
  • Relatsiooniline mudel (andmemudel) – andmed on tabelites ja seotud võtmetega.

Ms Visio

OLEMID (Entities)

Sportlane

Sportlane on olem, mis esitab sportlase andmeid.
Atribuudid:

  • SportlaneID
  • Eesnimi
  • Sünniaeg
  • Riik

Sportlane võib kuuluda meeskonda ja võib saada medaleid.


Meeskond

Meeskond on olem, mis esitab spordimeeskonna andmeid.

Atribuudid:

  • MeeskondID
  • Nimi
  • Riik

Meeskonnaga on seotud sportlased.


SportlaseMeeskond

See olem näitab seost sportlase ja meeskonna vahel.

Atribuudid:

  • SportlaseMeeskondID
  • SportlaneID
  • MeeskondID

See tabel näitab, milline sportlane kuulub millisesse meeskonda.


Medal

Medal on olem, mis näitab sportlase saavutust võistlusel.

Atribuudid:

  • MedalID
  • MedalTüüp

Medal võib olla seotud sportlase tulemusega.


TulemusSportlane

See olem esitab sportlase tulemusi võistlusel.

Atribuudid:

  • TulemusSportlaneID
  • SportlaneID
  • Tulemus
  • MedalID
  • KohtunikID

See näitab sportlase tulemust ja võimalikku medalit.


TulemusMeeskond

See olem esitab meeskonna tulemusi.

Atribuudid:

  • TulemusMeeskondID
  • MeeskondID
  • Tulemus
  • MedalID
  • KohtunikID

See näitab meeskonna saavutusi võistlusel.


Kohtunik

Kohtunik on olem, mis esitab kohtuniku andmeid.

Atribuudid:

  • KohtunikID
  • Eesnimi
  • Perenimi
  • SportID
  • Riik

Kohtunik hindab tulemusi.


Võistlus

Võistlus on olem, mis esitab spordivõistluse andmeid.

Atribuudid:

  • VõistlusID
  • Asukoht
  • Kuupäev
  • SportID

Võistlus on seotud kindla spordialaga.


Sport

Sport on olem, mis esitab spordiala.

Atribuudid:

  • SportID
  • Nimi

Spordiala on seotud võistluste ja kohtunikega.

Relatsiooniline andmebaasi kuju

Andmed salvestatakse tabelites.
Tabelid on seotud Primary Key ja Foreign Key abil.

Andmebaasi skeem – MySQL näide

CREATE TABLE Sportlane (
SportlaneID INT PRIMARY KEY,
Eesnimi VARCHAR(40),
Synniaeg DATE,
Riik VARCHAR(40)
);

CREATE TABLE Meeskond (
MeeskondID INT PRIMARY KEY,
Nimi VARCHAR(40),
Riik VARCHAR(40)
);

CREATE TABLE Medal (
MedalID INT PRIMARY KEY,
MedalTyyp VARCHAR(20)
);

Näiteandmed

INSERT INTO Sportlane VALUES
(1,'Mark','2000-05-12','Eesti'),
(2,'Ivan','1999-07-21','Venemaa'),
(3,'John','2001-03-15','USA');

Tabel