PMG2224 4/DB Beleg/Deborah
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>SQL</language>
='''Datenbank zu unterschiedlichen Universitäten, Professoren und Studiengänge'''=
=='''Ziel der Datenbank'''==
:Die Datenbank dient als Übersicht zur besseren Orientierung über einzelne Studiengänge, welche Universitäten welche Studiengänge anbieten und welche Professoren an welchen Universitäten was unterrichten. Gerade zur Entscheidungsfindung des weiteren beruflichen Lebens nach dem Schulabschluss ist eine strukturierte und einheitliche Übersicht, in der schnell Abfragen nach einzelnen Daten gemacht werden können durchaus hilfreich. Außerdem können so einfache Zusammenhänge zwischen Universitäten und Studiengängen hergestellt werden, was im Folgenden deutlich wird.
----
=='''Modellierung des ERMs der Datenbank'''==
[[Bild:Deborah_Image.png]]
:> Relation zwischen Professoren und Universität = "sind angestellt", zwischen Universität und Studiengang = "bietet an"
=='''Umwandlung in ein Relationenmodell'''==
[[Bild:Deborah_Image_(1).png]]
:> Primärschlüssel jeweils '"Nummer_x", Fremdschlüssel bei Tabelle "Anstellung" und "bietet an"
----
=='''Erstellen der Datenbank'''==
<code id="65ea0965a5ce3">
DROP TABLE IF EXISTS universities;
CREATE TABLE universities (
_id varchar NOT NULL UNIQUE,
name varchar NOT NULL,
city varchar(255),
postalCode varchar(10),
studyprograms varchar,
PRIMARY KEY (_id)
);
DROP TABLE IF EXISTS studyprograms;
CREATE TABLE studyprograms (
_id varchar NOT NULL UNIQUE,
name varchar NOT NULL,
content varchar,
nc float,
conditions varchar(255),
PRIMARY KEY (_id)
);
DROP TABLE IF EXISTS professors;
CREATE TABLE professors (
_id varchar NOT NULL UNIQUE,
lastName varchar,
firstName varchar,
age int,
university varchar,
PRIMARY KEY (_id),
FOREIGN KEY (university) REFERENCES universities(_id),
CHECK (age >= 18 AND age <= 100)
);
</code>
=='''Abfragen zur Datenbank'''==
<run id="65ea09a56bdfb">
</run>
=='''Reflexion'''==
:Die erstellte Datenbank verkörpert ein Beispiel für eine mögliche Datenbank zu einem solchen Thema. Diese müsste dann eigentlich deutlich größer und mit mehr Informationen und einer breiteren Masse an zum Beispiel möglichen Studiengängen gefüllt sein. In meinem erstellten Beispiel habe ich diese Informationen stark reduziert und auf einzelne Beispiele mit beispielhaften Sachinformationen beschränkt, um vorerst das System und die Abfragen zu verdeutlichen. Demnach ist der Inhalt der Datenbank nicht sonderlich realitätsnah, hilft aber dennoch dem Verständnis und stellt ein gutes Beispiel für eine mögliche übersichtliche Erstellung vieler miteinander verknüpfter Informationen dar.
:Bei der Umsetzung habe ich mich zuerst auf die theoretischen Teile (z.B. ERM) fokussiert, um einen Überblick über das Thema und den weiteren Aufbau zu erhalten. Darauf aufbauend war es einfacher, die weiteren praktischen Teile umzusetzen.