PMG2426 4/DB Beleg/Lenya

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>SQL</language>
=Ziel der Datenbank=

Ziel der Datenbank ist es, für beliebig viele Schüler systematisch zu erfassen, welche Klausuren sie schreiben, zu welchem Datum diese stattfinden und welche Themen in den jeweiligen Klausuren behandelt werden. Dadurch kann ein übersichtlicher Klausurenplan erstellt werden, der sowohl schülerbezogene als auch klausur- und themenbezogene Auswertung ermöglicht.
=ERM= 

[[Bild:ERM_Modell.png]]

Erläuterung des ERM:
Das ER-Modell besteht aus den Entitäten Schüler, Klausur und Thema. Zwischen Schüler und Klausur besteht die m:n-Beziehung "schreibt", da ein Schüler mehrere Klausuren schreiben kann und eine Klausur von mehreren Schülern geschrieben wird. Zwischen Klausur und Thema besteht ebenfalls eine m:n-Beziehung, da eine Klausur mehrere Themen umfasst und ein Thema in mehreren Klausuren vorkommen kann. Mit diesem ER-Modell lassen sich Klausurenpläne erstellen und auswerten, z.B. welche Klausuren ein bestimmter Schüler schreibt, an welchen Terminen diese stattfinden und welche Themen in den einzelnen Klausuren behandelt werden.

=Relationsmodell=

[[Bild:Le Bog_Relationmodell.png]]

=Datenbank=
<code id="52dcdf16795a2">
DROP TABLE IF EXISTS Schüler;
CREATE TABLE Schüler (
  Schüler_ID varchar(255),
  Name varchar(255),
  Klasse varchar(255),
  Wohnort varchar(255),
  PLZ varchar (255),
  PRIMARY KEY  (Mitglied_ID)
);

DROP TABLE IF EXISTS Klausur;
CREATE TABLE Klausur (
  Klausur_ID varchar(255),
  Fach varchar(255),
  Datum varchar(255),
  Dauer varchar(255),
  PRIMARY KEY  (Klausur_ID)
);

DROP TABLE IF EXISTS Thema;
CREATE TABLE Thema (
  Thema_ID varchar(255),
  Themenname varchar(255),
  Schwierigkeit varchar(255),
  Beschreibung varchar(255),
  PRIMARY KEY  (Thema_ID)
);

DROP TABLE IF EXISTS schreibt;
CREATE TABLE schreibt (
  PRIMARY KEY  (Klausur_ID)
  PRIMARY KEY  (Schüler_ID)
);

DROP TABLE IF EXISTS Klausur_Thema;
CREATE TABLE Klausur_Thema (
  PRIMARY KEY  (Klausur_ID)
  PRIMARY KEY  (Thema_ID)
);

INSERT INTO Schüler VALUES ('S001', 'Anna Schneider', '11', 'Berlin', '10115');
INSERT INTO Schüler VALUES ('S001', 'Anna Schneider', '11', 'Berlin', '10115');
INSERT INTO SchÜler VALUES ('S002', 'Max Müller', '12', 'Hamburg', '20095');
INSERT INTO SchÜler VALUES ('S003', 'Lena Fischer', '10', 'München', '80331');
INSERT INTO SchÜler VALUES ('S004', 'Jonas Weber', '11', 'Köln', '50667');
INSERT INTO SchÜler VALUES ('S005', 'Sophie Klein', '12', 'Frankfurt', '60311');
INSERT INTO Schüler VALUES ('S006', 'Paul Hoffmann', '10', 'Stuttgart', '70173');

INSERT INTO Klausur VALUES ('K001', 'Biologie', '2026-03-15', 90);
INSERT INTO Klausur VALUES ('K002', 'Mathematik', '2026-03-18', 120);
INSERT INTO Klausur VALUES ('K003', 'Deutsch', '2026-03-20', 180);
INSERT INTO Klausur VALUES ('K004', 'Ethik', '2026-03-22', 60);
INSERT INTO Klausur VALUES ('K005', 'Chemie', '2026-03-25', 90);
INSERT INTO Klausur VALUES ('K006', 'Physik', '2026-03-28', 120);

INSERT INTO Thema VALUES ('T001', 'Genexpression', 'hoch', 'Transkription und Translation der Proteinbiosynthese');
INSERT INTO Thema VALUES ('T002', 'Stochastik', 'mittel', 'Wahrscheinlichkeitsrechnung und Zufallsexperimente');
INSERT INTO Thema VALUES ('T003', 'Ethik der Gentechnik', 'mittel', 'Moralische und gesellschaftliche Fragestellungen');
INSERT INTO Thema VALUES ('T004', 'Analysis', 'hoch', 'Differential- und Integralrechnung');
INSERT INTO Thema VALUES ('T005', 'Mechanik', 'mittel', 'Bewegung, Kraft und Energie');
INSERT INTO Thema VALUES ('T006', 'Gedichtanalyse', 'leicht', 'Analyse lyrischer Texte und Stilmittel');

INSERT INTO Schreibt VALUES ('S001', 'K001');
INSERT INTO Schreibt VALUES ('S001', 'K002');
INSERT INTO Schreibt VALUES ('S002', 'K001');
INSERT INTO Schreibt VALUES ('S002', 'K003');
INSERT INTO Schreibt VALUES ('S003', 'K002');
INSERT INTO Schreibt VALUES ('S003', 'K004');
INSERT INTO Schreibt VALUES ('S004', 'K003');
INSERT INTO Schreibt VALUES ('S004', 'K005');
INSERT INTO Schreibt VALUES ('S005', 'K004');
INSERT INTO Schreibt VALUES ('S006', 'K006');

INSERT INTO Klausur_Thema VALUES ('K001', 'T001'); 
INSERT INTO Klausur_Thema VALUES ('K002', 'T002'); 
INSERT INTO Klausur_Thema VALUES ('K003', 'T006');
INSERT INTO Klausur_Thema VALUES ('K004', 'T003');
INSERT INTO Klausur_Thema VALUES ('K005', 'T005'); 
INSERT INTO Klausur_Thema VALUES ('K006', 'T004');