PMG2224 4/DB Beleg/Larissa
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>SQL</language>
== '''Datenbank Autohaus''' ==
'''Ziel der Datenbank'''
Das Ziel der Datenbank ist es, alle wichtigen Daten über Fahrzeuge (KFZ), Kunden und Verkäufer eines Autohauses zu speichern und zu verwalten.
Dadurch können Mitarbeiter des Autohauses schneller und effizienter arbeiten, indem sie Daten leichter abrufen und analysieren können.
Ich habe mir das Thema ausgewählt, weil ich herausfinden wollte, wie die Informationen in einer Datenbank verwaltet werden.
== Modellierung ERM ==
[[Bild:Lalie_Image.png]]
== Transformation in Relationenmodell ==
[[Bild:Lalie_Image_(1).png]]
== Erstellen DB ==
<code id="65ba3455cad1d">
DROP TABLE IF EXISTS KFZ; -- Fals eine Tabelle bereits existiert -löschen
CREATE TABLE KFZ (
Modellname varchar(30), -- alle Datenfelder die wir brauchen - Attribute/Eigenschaften
Marke varchar(30) ,
Preis varchar(10),
Leistung varchar(10),
Kraftstoff varchar (10),
Farbe varchar(10),
Jahr varchar(10),
KFZ_ID varchar(10),
PRIMARY KEY (KFZ_ID) -- primärschlüssel
);
INSERT INTO KFZ VALUES ('Golf 7', 'Volkswagen', '10.850€', '85', 'Benzin', 'weiß', '2014', '11234' );
INSERT INTO KFZ VALUES ('SLC 180 AMG', 'Mercedes-Benz', '34.790€', '155', 'Benzin', 'schwarz', '2019', '11278');
INSERT INTO KFZ VALUES ('Up!', 'Volkswagen', '10.690€', '60', 'Benzin', 'rot', '2018', '11233' );
INSERT INTO KFZ VALUES ('Golf 7', 'Volkswagen', '18.130€', '185', 'Diesel', 'weiß', '2017', '11265' );
INSERT INTO KFZ VALUES ('Q3', 'Audi', '20.540€', '150', 'Diesel', 'weiß', '2017', '11236' ); -- Trennung mit Komma und in '(...)'
INSERT INTO KFZ VALUES ('Vito Tourer', 'Mercedes-Benz', '29.230€', '163', 'Diesel', 'schwarz', '2016', '11298' );
INSERT INTO KFZ VALUES ('Civic', 'Honda', '19.090€', '126', 'Benzin', 'rot', '2020', '11261' );
INSERT INTO KFZ VALUES ('A1', 'Audi', '13.960€', '95', 'Benzin', 'rot', '2018', '11237' );
DROP TABLE IF EXISTS KUNDE;
CREATE TABLE KUNDE (
Name varchar(30),
Vorname varchar(30),
Telefon varchar(30),
Wohnort varchar(30),
K_ID varchar(10),
PRIMARY KEY (K_ID)
);
INSERT INTO KUNDE VALUES ('Hoffmann','Julia','089886019','München','1120');
INSERT INTO KUNDE VALUES ('Müller','Steffen','0911119057','Fürth','1121');
INSERT INTO KUNDE VALUES ('Decker','Peter','040337048','Hamburg','1122');
INSERT INTO KUNDE VALUES ('Bader','Lukas','0211328460','Düsseldorf','1123');
INSERT INTO KUNDE VALUES ('Bergmann','Kerstin','089408527','München','1124');
INSERT INTO KUNDE VALUES ('Wolf','Marina','0941334276','Regensburg','1125');
DROP TABLE IF EXISTS VERKÄUFER;
CREATE TABLE VERKÄUFER (
Name varchar(30),
Vorname varchar(30),
V_ID varchar(30),
PRIMARY KEY (V_ID)
);
INSERT INTO VERKÄUFER VALUES ('Ackermann','Laura','12');
INSERT INTO VERKÄUFER VALUES ('Ackermann','Maximilian','10');
INSERT INTO VERKÄUFER VALUES ('Schwarz','Jonas','13');
INSERT INTO VERKÄUFER VALUES ('Schmidt','Klaus','14');
</code>
'''Abfragen'''
Liste alle Fahrzeuge des Autohaus auf.
<run id="65ba3455cad63">SELECT * FROM KFZ;</run>
Nenne alle Fahrzeuge die mehr als 15.000€ kosten.
<run id="65ba3455cad63">SELECT * FROM KFZ WHERE Preis > '15.000€' </run>
Nenne alle Autos deren Kraftstoff Diesel ist.
<run id="65ba3455cad63">SELECT * FROM KFZ WHERE Kraftstoff = 'Diesel' </run>
Nenne alle Kunden die aus München und Hamburg kommen.
<run id="65ba3455cad63">SELECT * FROM KUNDE WHERE Wohnort = 'München' OR Wohnort = 'Hamburg' </run>
== kritische Reflexion zu Modellierung und Umsetzung ==
Die Modellierung der Datenbank eines Autohauses ist hier relativ einfach dargestellt, da nur die Fahrzeuge, Kunden und Verkäufer im Verhältnis dargestellt sind.
Ein Autohaus bezieht sich jedoch auf weitaus mehr Bereiche, wie zum Beispiel Reparaturen und Verkäufe. Dementsprechend wäre mein Datenbank noch ausbaufähig.
Durch eine weitere Tabelle - Verkauf - könnte man zwischen Kunden und KFZ sowie Verkäufer eine Verbindung ziehen und Attribute wie Datum, Preis und Vertrag hinzufügen.
== Quellen / Tools ==
https://erdplus.com/
Word