PMG/Sammlung alt DB

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>SQL</language>
Gegeben ist folgende, stark vereinfachte Datenbank mit den Tabellen ''Schueler'' und ''Noten'', die neben den Adressen die Prüfungsnoten der Schüler in einigen Fächern speichert.<br>


<code hidden id="4cacebae2b337">

DROP TABLE IF EXISTS schueler;
CREATE TABLE schueler (
  Name varchar(20),
  Vorname varchar(20) ,
  Wohnort varchar(15) ,
  PLZ varchar(5) ,
  Telefon varchar(11) ,
  Straße varchar(25) ,
  Schuelernr varchar(7) ,
  PRIMARY KEY  (Schuelernr)
);


INSERT INTO schueler VALUES ('Scheurich', 'Erich', 'Bautzen', '02625', '40256', 'Mättigstr. 12', '1234567');
INSERT INTO schueler VALUES ('Schlenkrich', 'Ricarda', 'Teichritz', '02689', '23456', 'Dorfstr. 2', '1234568');
INSERT INTO schueler VALUES ('Angst', 'Beatrice', 'Wurschen', '02645', '67255', 'Nr. 12a', '1234569');
INSERT INTO schueler VALUES ('Waurick', 'Andre', 'Bautzen', '02625', '30445', 'Brecht-Str. 34', '1234572');
INSERT INTO schueler VALUES ('Scheurich', 'Erick', 'Bautzen', '02625', '40256', 'Mättigstr. 12', '1234573');


DROP TABLE IF EXISTS Noten;
CREATE TABLE Noten (
  Schuelernr varchar(7),
  Mathe integer default '0',
  Deutsch integer,
  Bio integer 
);



INSERT INTO Noten VALUES ('1234567', 2, 3, 1);
INSERT INTO Noten VALUES ('1234568', 2, 2, 2);
INSERT INTO Noten VALUES ('1234569', 3, 4, 2);
INSERT INTO Noten VALUES ('1234572', 4, 3, 3);
INSERT INTO Noten VALUES ('1234573', 1, 1, 1);

</code>


'''1. Erstellen Sie folgende Abfragen:'''

* Gesucht sind alle Namen, Vornamen und Adressen derjenigen Schüler, deren Noten in allen Fächern besser als 3 sind.
* Gesucht sind alle Schüler aus Bautzen.


<eval id="4cacebc7a138b">

</eval>

 select Name, Vorname, Wohnort, PLZ
 from schueler, Noten
 where schueler.schuelernr=Noten.schuelernr and (Mathe<3 and Deutsch<3 and Bio<3);
 
 select Name, Vorname
 from schueler
 where Wohnort='Bautzen';
 
 select * from schueler;


'''2. Ergänzen Sie die Datenbank um eine Tabelle Pruefer.'''<br>

mit den Attributen
* Pruefernr varchar(7)
* Name varchar(20)
* Fach varchar(4))

Füllen Sie die Tabelle mit mindestens 3 Datensätzen


'''3. Aufgabe'''<br>

Die Tabelle ist noch "losgelöst" von den anderen Tabellen.<br>
Beschreiben Sie eine Möglichkeit, damit die Tabelle ''pruefer'' in Beziehung zu den anderen steht.

<eval id="4cd111f4e4723">
begin
write(' // Hier sollte Ihr Text stehen ');
end.
</eval>

 Erstelle eine Datenbank '''''CD-Versand''''': zur Verwaltung von Kundendaten, der vorhandenen CDs und des Versands an Kunden


Datenbank_SQL-Syntax zum Nachlesen: [http://hsqldb.org/doc/2.0/guide/index.html] <br><br>


{| border="1"
 |-
 | [[Bild:CD-Versand.jpeg|Miniatur|250px]] || [[Bild:1234.jpeg|Miniatur|250px]] || [[Bild:Diagramm2.jpeg|Miniatur|250px]]
 |-
 | Astrid|| Linda || David
 |-
 | [[Bild:Ll1.jpeg|Miniatur|250px]] || [[Bild:Modell_cd-versand.jpeg|Miniatur|250px]] || [[Bild:Dia.jpeg|Miniatur|250px]] 
 |-
 | Jonas || Martin || Franz
 |}


<code id="4cda754fb9361">
//Hier Datenstruktur anlegen

</code>


<eval id="4cda754fb947d">
//Hier Abfragen formulieren
</eval>


<eval id="4cecf79a4840c">
//Hier Abfragen formulieren
</eval>

<eval id="4cecf79a48523">
//Hier Abfragen formulieren
</eval>


zurück zu [[Datenbanken]]


'''Anforderungen an das Datenbank-Projekt'''


Bearbeiten Sie ein Datenbank-Projekt zu einem Thema Ihrer Wahl.

Dazu gehören:

* Ziel der Datenbank ("Begründung" der Themenwahl)
* Modellierung in einem ERM
* Transformation in das Relationenmodell
* Erstellen der DB (Struktur/notwendige Datensätze)
* Erstellen von verschiedenen Abfragen (unterschiedlicher „Schwierigkeit“)



Das Projekt ist komplett im PWiki zu bearbeiten.
Dabei arbeitet jeder auf einer eigenen Seite (siehe Links unten). Unterseiten werden mit "/" neu eingefügt.[[Bild:Unterseiten.JPG|right|thumb|250px|in der Adresszeile hinter die aktuelle Seite einfügen]]<br>

Wichtige Merkmale der Modelle (Kardinalität, Normalform, ...) sind zu erläutern.<br>
Das ERM ist als Bild einzufügen.


Bearbeitung des Projekts während der Unterrichtsstunden.
	
vorgesehener Zeitraum: