fetches plans so far, TODO: prepare for going public: translate, comment
This commit is contained in:
67
repertoire.sql
Normal file
67
repertoire.sql
Normal file
@@ -0,0 +1,67 @@
|
||||
CREATE TABLE Komponist_in (
|
||||
id INTEGER NOT NULL PRIMARY KEY,
|
||||
Vorname VARCHAR(255) NOT NULL,
|
||||
Name VARCHAR(255) NOT NULL,
|
||||
Geburtsdatum DATE NOT NULL,
|
||||
Sterbedatum DATE
|
||||
);
|
||||
|
||||
CREATE TABLE Werk (
|
||||
id INTEGER NOT NULL PRIMARY KEY,
|
||||
Komp_id INTEGER NOT NULL,
|
||||
VOE_Jahr INTEGER,
|
||||
Opus VARCHAR(15),
|
||||
Sammlung VARCHAR(127),
|
||||
Haupttonart VARCHAR(15),
|
||||
Titel VARCHAR(127),
|
||||
Satztitel VARCHAR(127),
|
||||
Aliasname VARCHAR(127),
|
||||
Werkverzeichnis VARCHAR(31),
|
||||
Werkverzeichnisnummer VARCHAR(15),
|
||||
FOREIGN KEY(Komp_id) REFERENCES Komponist_in(id)
|
||||
);
|
||||
|
||||
CREATE TABLE Satz (
|
||||
Werk_id INTEGER NOT NULL,
|
||||
Lfd_Satznummer INTEGER NOT NULL,
|
||||
Nummer VARCHAR(15),
|
||||
Bezeichnung VARCHAR(63),
|
||||
Tonart VARCHAR(15),
|
||||
Aufnahme BLOB,
|
||||
PRIMARY KEY(Werk_id, Lfd_Satznummer),
|
||||
FOREIGN KEY(Werk_id) REFERENCES Werk(id)
|
||||
);
|
||||
|
||||
CREATE TABLE Spieler_in (
|
||||
id INTEGER NOT NULL PRIMARY KEY,
|
||||
Vorname VARCHAR(255) NOT NULL,
|
||||
Nachname VARCHAR(255) NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE Konzert (
|
||||
id INTEGER NOT NULL PRIMARY KEY,
|
||||
Datum DATE,
|
||||
Uhrzeit VARCHAR(5),
|
||||
Saal VARCHAR(255)
|
||||
);
|
||||
|
||||
CREATE TABLE beherrscht(
|
||||
Werk_id INTEGER NOT NULL,
|
||||
Satz_id INTEGER NOT NULL,
|
||||
Spieler_in_id INTEGER NOT NULL,
|
||||
Vorlauf INTEGER DEFAULT 7,
|
||||
PRIMARY KEY(Werk_id, Satz_id, Spieler_in_id),
|
||||
FOREIGN KEY(Werk_id, Satz_id) REFERENCES Satz(Werk_id, Lfd_Satznummer),
|
||||
FOREIGN KEY(Spieler_in_id) REFERENCES Spieler_in(id)
|
||||
);
|
||||
|
||||
CREATE TABLE spielt_in(
|
||||
Konzert_id INTEGER NOT NULL,
|
||||
Spieler_in_id INTEGER NOT NULL,
|
||||
Werk_id INTEGER NOT NULL,
|
||||
Satz_id INTEGER NOT NULL,
|
||||
PRIMARY KEY(Konzert_id, Spieler_in_id, Werk_id, Satz_id),
|
||||
FOREIGN KEY(Konzert_id) REFERENCES Konzert(id),
|
||||
FOREIGN KEY(Werk_id, Satz_id) REFERENCES Satz(Werk_id, Lfd_Satznummer),
|
||||
FOREIGN KEY(Spieler_in_id) REFERENCES Spieler_in(id)
|
||||
);
|
||||
Reference in New Issue
Block a user