From c619382260f2598da5836749f968727177518ea8 Mon Sep 17 00:00:00 2001 From: Krumel Date: Mon, 17 May 2021 15:30:00 +0200 Subject: [PATCH] added AWP sql files --- AWP_11fi5/2020_21_ex5_FI5_SQL Statements.sql | 48 ++ AWP_11fi5/2021-05-06 Übungsaufgaben PDFs.sql | 83 ++ ...21-05-06 Übungsaufgaben UnternehmensDB.sql | 32 + ...-06 Übungsuafgaben Aggregatsfunktionen.sql | 46 ++ ...05-11 Übungsaufgaben lunadb subselects.sql | 79 ++ .../2021-05-17 Übung 1 Beispiel Luna.sql | 52 ++ AWP_11fi5/DDL.sql | 52 ++ AWP_11fi5/IT_Concept INSERTS.sql | 43 + AWP_11fi5/IT_Concept.sql | 137 ++++ AWP_11fi5/Kosidas ALTER.sql | 40 + AWP_11fi5/Kosidas Inserts.sql | 28 + AWP_11fi5/Kosidas.sql | 65 ++ AWP_11fi5/Kosidasdb_2019-12-19.sql | 192 +++++ AWP_11fi5/Rechnung.sql | 70 ++ AWP_11fi5/Tournee ALTER.sql | 61 ++ AWP_11fi5/Tournee.sql | 87 ++ AWP_11fi5/luna2000Abfrage.sql | 57 ++ AWP_11fi5/luna2000_innodb INSERTS.sql | 27 + AWP_11fi5/luna2000_innodb.sql | 138 ++++ AWP_11fi5/unternehmensDB_2021-02-08.sql | 767 ++++++++++++++++++ 20 files changed, 2104 insertions(+) create mode 100644 AWP_11fi5/2020_21_ex5_FI5_SQL Statements.sql create mode 100644 AWP_11fi5/2021-05-06 Übungsaufgaben PDFs.sql create mode 100644 AWP_11fi5/2021-05-06 Übungsaufgaben UnternehmensDB.sql create mode 100644 AWP_11fi5/2021-05-06 Übungsuafgaben Aggregatsfunktionen.sql create mode 100644 AWP_11fi5/2021-05-11 Übungsaufgaben lunadb subselects.sql create mode 100644 AWP_11fi5/2021-05-17 Übung 1 Beispiel Luna.sql create mode 100644 AWP_11fi5/DDL.sql create mode 100644 AWP_11fi5/IT_Concept INSERTS.sql create mode 100644 AWP_11fi5/IT_Concept.sql create mode 100644 AWP_11fi5/Kosidas ALTER.sql create mode 100644 AWP_11fi5/Kosidas Inserts.sql create mode 100644 AWP_11fi5/Kosidas.sql create mode 100644 AWP_11fi5/Kosidasdb_2019-12-19.sql create mode 100644 AWP_11fi5/Rechnung.sql create mode 100644 AWP_11fi5/Tournee ALTER.sql create mode 100644 AWP_11fi5/Tournee.sql create mode 100644 AWP_11fi5/luna2000Abfrage.sql create mode 100644 AWP_11fi5/luna2000_innodb INSERTS.sql create mode 100644 AWP_11fi5/luna2000_innodb.sql create mode 100644 AWP_11fi5/unternehmensDB_2021-02-08.sql diff --git a/AWP_11fi5/2020_21_ex5_FI5_SQL Statements.sql b/AWP_11fi5/2020_21_ex5_FI5_SQL Statements.sql new file mode 100644 index 0000000..b463afd --- /dev/null +++ b/AWP_11fi5/2020_21_ex5_FI5_SQL Statements.sql @@ -0,0 +1,48 @@ + +drop database if exists 2020_21_Ex2; +create database if not exists 2020_21_Ex2; +use 2020_21_Ex2; + +create table zimmer( +zid int(11) primary key, +anzahlBetten int(11), +preis double); + +create table gast( +gid int (11), +name varchar(50), +strasse varchar(50), +ort varchar(50), +raucher varchar(4)); + +ALTER TABLE gast +MODIFY COLUMN raucher BOOLEAN; + +ALTER TABLE gast +CHANGE COLUMN gid gnr INT; + +ALTER TABLE gast +ADD PRIMARY KEY(gnr); + +CREATE TABLE buchung( + zid INT, + gnr INT, + bid INT, + von DATETIME, + bis DATETIME, + PRIMARY KEY (zid, gnr, bid), + FOREIGN KEY (gnr) REFERENCES gast(gnr), + FOREIGN KEY (zid) REFERENCES zimmer(zid) +); + +ALTER TABLE gast CHANGE NAME nachname VARCHAR(50); + +ALTER TABLE gast RENAME TO kunde; + +INSERT INTO zimmer (zid, anzahlBetten) VALUES + (1,2), (2,1), (3,2); + +UPDATE zimmer SET preis=45.99; + +DELETE FROM zimmer WHERE zid=2; +#alternativ where anzahlBetten=1 diff --git a/AWP_11fi5/2021-05-06 Übungsaufgaben PDFs.sql b/AWP_11fi5/2021-05-06 Übungsaufgaben PDFs.sql new file mode 100644 index 0000000..ac322d9 --- /dev/null +++ b/AWP_11fi5/2021-05-06 Übungsaufgaben PDFs.sql @@ -0,0 +1,83 @@ +USE `unternehmensdb`; + +#1 +SELECT AVG(gehalt) FROM mitarbeiter; + +#2 +SELECT MAX(bestellmenge) FROM posten; + +#3 +SELECT vorname, name FROM kunde +ORDER BY vorname, name +LIMIT 1; + +#4 +SELECT COUNT(*), hersteller.name, hersteller.herstellernr FROM artikel +JOIN hersteller ON hersteller.herstellernr = artikel.hersteller +GROUP BY artikel.hersteller +ORDER BY COUNT(*) DESC; + +#5 +SELECT COUNT(*), hersteller.name, hersteller.herstellernr FROM artikel +JOIN hersteller ON hersteller.herstellernr = artikel.hersteller +GROUP BY artikel.hersteller +ORDER BY COUNT(*) DESC +LIMIT 2; + +#6 +SELECT AVG(gehalt), abteilung FROM mitarbeiter +GROUP BY abteilung; + +#7 +SELECT COUNT(*), ort, plz FROM kunde +GROUP BY ort +ORDER BY COUNT(*) DESC; + +#8 +SELECT COUNT(*), ort, plz FROM kunde +GROUP BY ort +ORDER BY COUNT(*) DESC, ort; + +#9 +SELECT COUNT(*), kategorie FROM artikel +WHERE nettopreis > 50 +GROUP BY kategorie; + +#10 +SELECT bestellnr, SUM(bestellmenge) FROM posten +GROUP BY bestellnr +HAVING SUM(bestellmenge) > 4; + +#11 +SELECT hersteller, COUNT(*) FROM artikel +GROUP BY hersteller; + + +USE `luna2_innodb`; + +#20 +SELECT * FROM tblmitarbeiter +JOIN tbltaetigkeit ON tblmitarbeiter.M_Nr = tbltaetigkeit.M_Nr +GROUP BY P_Nr, T_Taetigkeit; + +#21 +SELECT MIN(M_Nr) FROM tblmitarbeiter; + +#22 +SELECT SUM(P_Mittel) FROM tblprojekt; + +#23 +SELECT AVG(P_Mittel) FROM tblprojekt +WHERE P_Mittel > 100000; + +#24 +SELECT P_Nr, COUNT(DISTINCT T_Taetigkeit) FROM tbltaetigkeit +GROUP BY P_Nr; + +#25 +SELECT P_Nr, COUNT(M_Nr) FROM tbltaetigkeit +GROUP BY P_Nr; + +#26 +SELECT T_Taetigkeit, COUNT(M_Nr) FROM tbltaetigkeit +GROUP BY T_Taetigkeit; \ No newline at end of file diff --git a/AWP_11fi5/2021-05-06 Übungsaufgaben UnternehmensDB.sql b/AWP_11fi5/2021-05-06 Übungsaufgaben UnternehmensDB.sql new file mode 100644 index 0000000..51a3a90 --- /dev/null +++ b/AWP_11fi5/2021-05-06 Übungsaufgaben UnternehmensDB.sql @@ -0,0 +1,32 @@ +USE `unternehmensdb`; + +#Aufgabe 1 + +SELECT artikelnr, bezeichnung, kategorie FROM artikel +ORDER BY kategorie, bezeichnung; + +SELECT name, gehalt, abteilung FROM mitarbeiter +ORDER BY gehalt DESC, abteilung ASC; + +SELECT artikelnr, bezeichnung, kategorie, nettopreis FROM artikel +WHERE kategorie = 4 +ORDER BY nettopreis DESC; + +SELECT kundennr, name, plz, zahlungsart FROM kunde +WHERE zahlungsart = "N" +ORDER BY plz; + +#Aufgabe 2 + +SELECT AVG(gehalt) FROM mitarbeiter; + +SELECT MAX(bestellmenge) FROM posten; + +SELECT vorname, name FROM kunde +ORDER BY vorname, name +LIMIT 1; + +SELECT hersteller, COUNT(*) FROM artikel +GROUP BY hersteller +ORDER BY COUNT(*) DESC +LIMIT 2; \ No newline at end of file diff --git a/AWP_11fi5/2021-05-06 Übungsuafgaben Aggregatsfunktionen.sql b/AWP_11fi5/2021-05-06 Übungsuafgaben Aggregatsfunktionen.sql new file mode 100644 index 0000000..076f61f --- /dev/null +++ b/AWP_11fi5/2021-05-06 Übungsuafgaben Aggregatsfunktionen.sql @@ -0,0 +1,46 @@ +USE `Kosidasdb`; + +SELECT AVG(gehalt) FROM mitarbeiter +WHERE plzid = 6; + +SELECT plzid, AVG(gehalt) FROM mitarbeiter +GROUP BY plzid; + +SELECT plzid, geschlecht, COUNT(*) FROM mitarbeiter +GROUP BY plzid, geschlecht; + +SELECT MAX(preis), AVG(preis), MIN(preis) FROM artikel +GROUP BY kategorie; + +SELECT kategorie, COUNT(*) FROM artikel +GROUP BY kategorie +HAVING COUNT(*) > 5; + +SELECT kategorie, COUNT(*) FROM artikel +WHERE preis > 50 +GROUP BY kategorie; + +SELECT kategorie, COUNT(*) FROM artikel +WHERE preis > 50 +GROUP BY kategorie +HAVING COUNT(*) > 2; + +SELECT plzid, AVG(gehalt) FROM mitarbeiter +GROUP BY plzid +HAVING COUNT(*) >= 2; + +SELECT kategorie, AVG(Preis) FROM artikel +GROUP BY kategorie +HAVING AVG(Preis) > 30; + +SELECT bestellid, COUNT(*) FROM posten +GROUP BY bestellid; + +SELECT kategorie, COUNT(DISTINCT farbe) FROM artikel +GROUP BY kategorie +ORDER BY COUNT(DISTINCT farbe) DESC +LIMIT 1; + +SELECT kategorie, COUNT(*) FROM artikel +GROUP BY kategorie +HAVING (SUM(preis) < 600) AND (COUNT(*) < 20); \ No newline at end of file diff --git a/AWP_11fi5/2021-05-11 Übungsaufgaben lunadb subselects.sql b/AWP_11fi5/2021-05-11 Übungsaufgaben lunadb subselects.sql new file mode 100644 index 0000000..96370be --- /dev/null +++ b/AWP_11fi5/2021-05-11 Übungsaufgaben lunadb subselects.sql @@ -0,0 +1,79 @@ +USE `luna2_innodb`; + +#a +SELECT DISTINCT A_Nr FROM tblmitarbeiter +WHERE M_Nr IN ( + SELECT M_Nr FROM tbltaetigkeit + WHERE P_Nr = "p3"); + +#b +SELECT DISTINCT P_Nr FROM tbltaetigkeit +WHERE M_Nr < ( + SELECT MIN(M_Nr) FROM tblmitarbeiter + WHERE M_Name = "Müller"); + +#c +SELECT * FROM tblmitarbeiter +WHERE A_Nr IN ( + SELECT A_Nr FROM tblabteilung + WHERE A_Stadt = "München"); + +#d +SELECT M_Name FROM tblmitarbeiter +WHERE M_Nr IN ( + SELECT M_Nr FROM tbltaetigkeit + WHERE P_Nr IN ( + SELECT P_Nr FROM tblprojekt + WHERE P_Name = "Apollo" + ) + ); + +#e +#wat +SELECT MIN(M_Nr) FROM tblmitarbeiter; + +#f +SELECT M_Nr, M_Name FROM tblmitarbeiter +WHERE M_Nr = (SELECT MIN(M_Nr) FROM tblmitarbeiter); + +#g +SELECT M_Nr FROM tblmitarbeiter +WHERE M_Nr IN ( + SELECT M_Nr FROM tbltaetigkeit + WHERE T_Taetigkeit = "Projektleiter" AND T_Einstellungsdatum = ( + SELECT MAX(T_Einstellungsdatum) FROM tbltaetigkeit + WHERE T_Taetigkeit = "Projektleiter" + ) + ); + +#h +SELECT SUM(P_Mittel) FROM tblprojekt; + +#i +SELECT AVG(P_Mittel) FROM tblprojekt +WHERE P_Mittel > 100000; + +#j +SELECT P_Nr, COUNT(DISTINCT T_Taetigkeit) FROM tbltaetigkeit +GROUP BY P_Nr; + +#k +SELECT P_Nr, COUNT(DISTINCT M_Nr) FROM tbltaetigkeit +GROUP BY P_Nr; + +#l +SELECT T_Taetigkeit, COUNT(DISTINCT M_Nr) FROM tbltaetigkeit +GROUP BY T_Taetigkeit; + +#m +SELECT P_Nr FROM tbltaetigkeit +GROUP BY P_Nr +HAVING COUNT(DISTINCT M_Nr) < 4; + + + + + + + + diff --git a/AWP_11fi5/2021-05-17 Übung 1 Beispiel Luna.sql b/AWP_11fi5/2021-05-17 Übung 1 Beispiel Luna.sql new file mode 100644 index 0000000..8eba348 --- /dev/null +++ b/AWP_11fi5/2021-05-17 Übung 1 Beispiel Luna.sql @@ -0,0 +1,52 @@ +USE `unternehmensdb`; + +#1 +SELECT Name, Vorname, Bezeichnung as "Abteilung" FROM mitarbeiter, abteilung +WHERE mitarbeiter.ABTEILUNG = abteilung.ABTEILUNGSNR; + +#2 +SELECT Bezeichnung, Nettopreis, Name FROM artikel, hersteller +WHERE artikel.HERSTELLER = hersteller.HERSTELLERNR; + +#3 +SELECT Bezeichnung, Bestellmenge, kunde.Kundennr, Vorname, Name FROM kunde, bestellung, posten, artikel +WHERE kunde.KUNDENNR = bestellung.KUNDENNR + AND bestellung.KUNDENNR = posten.BESTELLNR + AND posten.ARTIKELNR = artikel.ARTIKELNR; + +USE `luna2_innodb`; + +#1 +SELECT M_Nr, M_Name, M_Vorname, tblmitarbeiter.A_Nr, A_Stadt FROM tblmitarbeiter, tblabteilung +WHERE tblmitarbeiter.A_Nr = tblabteilung.A_Nr; + +#2 +SELECT * FROM tblmitarbeiter, tblprojekt, tbltaetigkeit +WHERE tblmitarbeiter.M_Nr = tbltaetigkeit.M_Nr + AND tbltaetigkeit.P_Nr = tblprojekt.P_Nr + AND P_Name like "Gemini"; + +#3 +SELECT DISTINCT A_Nr FROM tblmitarbeiter, tbltaetigkeit +WHERE tblmitarbeiter.M_Nr = tbltaetigkeit.M_Nr + AND T_Einstellungsdatum = "1989-10-15"; + +#4 +SELECT M_Name, M_Vorname FROM tblmitarbeiter, tblabteilung +WHERE tblmitarbeiter.A_Nr = tblabteilung.A_Nr + AND A_Stadt = "Stuttgart"; + +#5 +SELECT DISTINCT P_Name FROM tblprojekt, tbltaetigkeit, tblmitarbeiter, tblabteilung +WHERE tblprojekt.P_Nr = tbltaetigkeit.P_Nr + AND tbltaetigkeit.M_Nr = tblmitarbeiter.M_Nr + AND tblmitarbeiter.A_Nr = tblabteilung.A_Nr + AND tblabteilung.A_Name = "Diagnose"; + +#6 +SELECT * FROM tblabteilung +WHERE A_Stadt IN ( + SELECT A_Stadt FROM tblabteilung + GROUP BY A_Stadt + HAVING COUNT(*) > 1 +); \ No newline at end of file diff --git a/AWP_11fi5/DDL.sql b/AWP_11fi5/DDL.sql new file mode 100644 index 0000000..44621a8 --- /dev/null +++ b/AWP_11fi5/DDL.sql @@ -0,0 +1,52 @@ +DROP DATABASE IF EXISTS awp_11fi5_ddl; +CREATE DATABASE awp_11fi5_ddl; + +USE awp_11fi5_ddl; + +CREATE TABLE Kunde( + Kundennummer INT AUTO_INCREMENT, + PRIMARY KEY(Kundennummer) +); + +CREATE TABLE Gerät( + GID INT AUTO_INCREMENT, + Lieferdatum DATE, + Einkaufspreis DEC(12,2), + Kundennummer INT, + Standort VARCHAR(45), + Wartungsvertrag BOOL, + letzte_Wartung DATE, + PRIMARY KEY(GID), + FOREIGN KEY(Kundennummer) REFERENCES Kunde(Kundennummer) +); + +CREATE TABLE Zubehör( + Zubehörnummer VARCHAR(6), + PRIMARY KEY(Zubehörnummer) +); + +CREATE TABLE Zählerablesungen( + ZID INT AUTO_INCREMENT, + Datum DATE, + Zählerstand INT, + PRIMARY KEY(ZID) +); + +CREATE TABLE Kostenarten( + KARTID INT AUTO_INCREMENT, + Kostanart VARCHAR(45), + PRIMARY KEY(KARTID) +); + +CREATE TABLE Kosten( + KID INT AUTO_INCREMENT, + Datum DATE, + KARTID INT, + Betrag DEC(12,2), + Bemerkung VARCHAR(45), + PRIMARY KEY(KID), + FOREIGN KEY(KARTID) REFERENCES Kostenarten(KARTID) +); + +CREATE TABLE Störungen( + #TODO \ No newline at end of file diff --git a/AWP_11fi5/IT_Concept INSERTS.sql b/AWP_11fi5/IT_Concept INSERTS.sql new file mode 100644 index 0000000..3ae90fa --- /dev/null +++ b/AWP_11fi5/IT_Concept INSERTS.sql @@ -0,0 +1,43 @@ +USE IT_Concept; + +INSERT INTO tblKostenart(KostenartID, Kostenart) VALUES +(1, "Wartung"), (2, "Miete"), (3, "Papier"); + +INSERT INTO tblKunde(Kundennr) VALUES +(5674), (5675), (5676); + +INSERT INTO tblStandort(StandortID, Etage, Raum) VALUES +(1, "EG", "007"), (2, "1OG", "109"), (3, "UG", "-112"); + +INSERT INTO tblStoerungsart(StoerungsartID, Art) VALUES +(1, "Papierstau"), (2, "Sorter defekt"), (3, "brennt."); + +INSERT INTO tblZubehoer(ZubehoerID) VALUES +("100-67"), ("100-08"), ("200-98"); + +INSERT INTO tblGeraet(Geraetenr, Einkaufspreis, Wartungsvertrag, letzteWartung, Lieferdatum, Kunde, Standort, Geraetebeschreibung, Bestelldatum) VALUES +(1, 15350, 1, "1983-10-12", "1971-9-17", 5674, 3, "Monster im Keller", "1970-12-30"), +(2, 350, 1, "2020-7-2", "2021-2-1", 5675, 1, "Monster im Keller", "2020-1-7"); + +INSERT INTO tblZaehler(ZaehlerID, Datum, Zaehlerstand, Geraet) VALUES +(1, "2021-02-3", 932432, 1); + +INSERT INTO tblGeraeteKosten(Geraet, Kostenart, Datum, Betrag) VALUES +(1, 2, "2020-01-01", 25000), (1, 3, "1990-12-30", 100); + +INSERT INTO tblGeraeteStoerung(Geraet, Stoerungsart, Datum, Bemerkung, StoerungBehoben) VALUES +(1, 3, "2000-1-1", "Wieso???", 0), (1, 3, "2001-1-1", "Brennt immernoch...", 0), (1, 3, "2010-1-1", "Unter Boiler verschoben -> Feature", 1); + +INSERT INTO tblGeraeteZubehoer(GeraetZubehoerID, Zubehoer, Geraet) VALUES +(1, "100-67", 1), (2, "100-08", 1), (3, "200-98", 2); + +UPDATE tblGeraet SET Einkaufspreis=250 WHERE Geraetenr=1; + +UPDATE tblZaehler SET Zaehlerstand=0; + +SELECT * FROM tblGeraet; + +DELETE FROM tblGeraeteZubehoer WHERE Geraet=2; +DELETE FROM tblGeraet WHERE Geraetenr=2; + +SELECT * FROM tblGeraet; \ No newline at end of file diff --git a/AWP_11fi5/IT_Concept.sql b/AWP_11fi5/IT_Concept.sql new file mode 100644 index 0000000..3e58345 --- /dev/null +++ b/AWP_11fi5/IT_Concept.sql @@ -0,0 +1,137 @@ +drop database if exists IT_Concept; +create database if not exists IT_Concept; +use IT_Concept; + +create table tblKunde( + Kundennr int primary key +-- mehr Attribute sind in der Aufgabe nicht genannt +)engine=innodb; + +create table tblStandort( + StandortID int primary key, + Etage varchar(10), + Raum varchar(10) +)engine=innodb; + +create table tblGeraet( + Geraetenr int(5) primary key, + Einkaufspreis double(6,2), + -- Wartungsvertrag und letzte Watung müssen nicht ausgelagert werden, + -- da auf Dauer nur 1 Datum und 1 boolscher Wert erfasst wird. + -- diese Werte sind direkt vom PK des Geräts abhängig. + Wartungsvertrag bool, -- boolscher Wert heißt true oder false + letzteWartung date, + Lieferdatum date, + -- Lieferdatum könnte auch in eigener Tabelle stehen, + -- wenn man davon ausgeht, dass mehr Details zur Lieferung erfasst werden + -- da im Formular nur das Datum steht, kann es auch bei Geraet erfasst werden + Kunde int, + Standort int, + foreign key(Standort) references tblStandort(StandortID), + foreign key(Kunde) references tblKunde(Kundennr) +)engine=innodb; + + +-- Beziehung Geraet - Zaehler braucht keine Zwischentabellen, da +-- ein Zaehler einem Gerät zugeordnet ist +-- ein Gerät genau einen Zähler hat +-- eigene Zählertabelle ist erforderlich, da merhere DS mit Zählerständen +-- zu erfassen sind. +-- ob der FK in tbl Geraet oder tblTaehler erfasst wird ist egal +create table tblZaehler( + ZaehlerID int auto_increment primary key, + Datum date, + Zaehlerstand int, + Geraet int(5), + foreign key(Geraet) references tblGeraet(Geraetenr) +)engine=innodb; + +-- bei der Beziehung Zubehör kann man der Übersicht entnehmen, dass +-- ein Gerät mehrere Zubehörteile hat (mehrere Zubehör-IDs im Formular) +-- außerdem interpretiere ich mit logischem Menschenverstand, dass +-- ein Zubehörteil vermutlich auch in merheren Geräten verwendet werden kann +-- deshalb n:m, das mit Zwischentabelle aufgelöst werden muss +-- da keine Anzahl im Formualr angegeben wird, gehe ich davon aus, dass +-- jedes Zubehörteil genau einmal in einem Gerät verbaut wird + +create table tblZubehoer( + ZubehoerID varchar(20) primary key +)engine=innodb; + +create table tblGeraeteZubehoer( + GeraetZubehoerID int auto_increment primary key, + Zubehoer varchar(20), + Geraet int(5), + foreign key(Zubehoer) references tblZubehoer(ZubehoerId), + foreign key(Geraet) references tblGeraet(Geraetenr) +)engine=InnoDB; + +-- ein Gerät verursacht verschiedene Kostenarten (Papier, Miete,...) +-- eine Kostenart fällt für verschiedene Geräte an +-- deshalb n:m-Beziehung, Zwischentabelle +create table tblKostenart( + KostenartID int auto_increment primary key, + Kostenart varchar(50) +)engine=innodb; + +-- eine Kostenart kommt mehrfach in einem Gerät vor, deshalb reichen +-- GeraeteID und KostenartID nicht als zusammengesetzter PK aus, +-- da sonst Papier, Miete o-ä. nur einmalig als Kostenfaktor angesetzt werden könnte +-- Lösung: eigener PK oder Datum zum PK hinzunehen. +create table tblGeraeteKosten( + Geraet int(5), + Kostenart int, + Datum date, + Betrag double(7,2), + Bemerkung varchar(50), + primary key (Geraet, Kostenart, Datum), + foreign key(geraet) references tblGeraet(Geraetenr), + foreign key(Kostenart) references tblKostenart(KostenartID) +)engine=innodb; + +-- ein Gerät kann mehrere Störungen haben, +-- eine Störung kann bei mehreren Geräten vorkommen +-- deshalb n:m-Beziehung und Auflpösung mit Zwischentabelle +create table tblStoerungsart( + StoerungsartID int auto_increment primary key, + Art varchar(50) +)engine=innodb; + +-- eine Kostenart kommt mehrfach in einem Gerät vor, deshalb reichen +-- GeraetID und StoerungsartID nicht als zusamengesetzter PK +-- Lösung: eigener PK oder Datum als drittes Element in PK dazu +create table tblGeraeteStoerung( + Geraet int(5), + Stoerungsart int, + Datum date, + primary key(Geraet, Stoerungsart, Datum), + foreign key(Geraet) references tblGeraet(Geraetenr), + foreign key(Stoerungsart) references tblStoerungsart(StoerungsartID) +)engine=INNODB; + +-- Alter Statements +-- Fügen Sie in Tabelle „Gerät“ ein weiteres Attribut „Gerätebeschreibung“ mit 100 Zeichen hinzu. +Alter table tblGeraet +add Geraetebeschreibung varchar(100); + +-- 2.Ergänzen Sie an geeigneter Stelle ein Attribut „Bemerkung“, bei dem Sie Eintragungen bezüglich der konkreten Störung vornehmen können. +Alter table tblGeraeteStoerung +add Bemerkung varchar(100); + +-- 3.Ändern Sie den Datentyp beim Attribut „Zählerstand“ von int auf double. (oder ggf. anders herum) +Alter table tblZaehler +modify Zaehlerstand double(13,0); + +-- 4.Ergänzen Sie beim Gerät ein Attribut Bestelldatum. +Alter table tblGeraet +add Bestelldatum date; + +-- 5.Ergänzen Sie an geeigneter Stelle ein Attribut „Störung behoben“, das nur die Werte true oder false halten kann. +Alter table tblGeraeteStoerung +add StoerungBehoben bool; +-- wenn Attributname aus 2 Wörtern besteht muss er in SQL mit Unterstrich oder zusammen geschrieben werden +-- ansonsten erkennt MySql die Begriffe zwei Eigenschaften und wirft einen Fehler + +-- 6.Löschen Sie die Spalte Bemerkung bei Tabelle Kosten. +Alter table tblGeraeteKosten +drop Bemerkung; diff --git a/AWP_11fi5/Kosidas ALTER.sql b/AWP_11fi5/Kosidas ALTER.sql new file mode 100644 index 0000000..86ec585 --- /dev/null +++ b/AWP_11fi5/Kosidas ALTER.sql @@ -0,0 +1,40 @@ +USE awp_11fi5_p2_kosidas; + +DROP TABLE IF EXISTS Kunde; +CREATE TABLE Kunde( + KundeID INT(11) AUTO_INCREMENT, + Nachname VARCHAR(45), + Vorname VARCHAR(45), + Straße_NR VARCHAR(45), + PLZID INT(11), + IBAN VARCHAR(34), + BIC VARCHAR(11), + PRIMARY KEY(KundeID) +); + +ALTER TABLE Kunde +CHANGE Straße_NR Strasse VARCHAR(45), +ADD Nummer VARCHAR(3) AFTER Strasse; + +DROP TABLE IF EXISTS Bank; +CREATE TABLE Bank( + BIC VARCHAR(11) NOT NULL, + NAME VARCHAR(45), + PLZID INT, + PRIMARY KEY(BIC) +); + +DROP TABLE IF EXISTS Ort; +CREATE TABLE Ort( + PLZID INT AUTO_INCREMENT, + PLZ VARCHAR(5), + Stadt VARCHAR(45), + PRIMARY KEY(PLZID) +); + +ALTER TABLE Bank +ADD FOREIGN KEY (PLZID) REFERENCES Ort(PLZID); + +ALTER TABLE Kunde +ADD FOREIGN KEY (PLZID) REFERENCES Ort(PLZID), +ADD FOREIGN KEY (BIC) REFERENCES Bank(BIC); diff --git a/AWP_11fi5/Kosidas Inserts.sql b/AWP_11fi5/Kosidas Inserts.sql new file mode 100644 index 0000000..c9be63b --- /dev/null +++ b/AWP_11fi5/Kosidas Inserts.sql @@ -0,0 +1,28 @@ +USE awp_11fi5_p2_kosidas; + +INSERT INTO Ort (PLZID, PLZ, Stadt) VALUES + (1, '90402', 'Nürnberg'), + (2, '80271', 'München'), + (3, '97070', 'Würzburg'), + (4, '97816', 'Lohr am Main'); + +INSERT INTO Farbe (Farbcode, Bezeichnung) VALUES + ('#FFFFFF', 'weiß'), + ('#000000', 'schwarz'), + ('#C0C0C0', 'grün'), + ('#FFFF00', 'gelb'); + +INSERT INTO Kategorie (KategorieID, Bezeichnung) VALUES + (1, 'Schuhe'), + (2, 'Kleidung'), + (3, 'Accessoires'); + +INSERT INTO Bank (BIC, NAME, PLZID) VALUES + ('GENODEF1GEM', 'Raiffeisenbank \nMain-Spessart', 4), + ('BYLADEM1SWU', 'Sparkasse \nMainfranken \nWürzburg', 3), + ('DEUTDEMMXXX', 'Deutsche Bank \nMünchen', 2); + +INSERT INTO Artikel (ArtikelID, Bezeichnung, KategorieID, Farbcode, Preis) VALUES + (134456, 'Sportschuh \nRiver', 1, '#000000', 59.95), + (134457, 'Sportschuh \nRiver', 1, '#C0C0C0', 79.95), + (134455, 'Poloshirt \nLondon', 2, '#FFFFFF', 19.95); \ No newline at end of file diff --git a/AWP_11fi5/Kosidas.sql b/AWP_11fi5/Kosidas.sql new file mode 100644 index 0000000..51e28c6 --- /dev/null +++ b/AWP_11fi5/Kosidas.sql @@ -0,0 +1,65 @@ +DROP DATABASE if EXISTS awp_11fi5_p2_kosidas; +CREATE DATABASE if NOT exists awp_11fi5_p2_kosidas; + +USE awp_11fi5_p2_kosidas; + +CREATE TABLE Kategorie( + KategorieID INT(12) auto_increment, + Bezeichnung VARCHAR(64), + PRIMARY KEY(KategorieID) +)ENGINE=INNODB; + +CREATE TABLE Farbe( + Farbcode VARCHAR(7), + Bezeichnung VARCHAR(64), + PRIMARY KEY(Farbcode) +)ENGINE=INNODB; + +CREATE TABLE Artikel( + ArtikelID INT(12) auto_increment, + Bezeichnung VARCHAR(64), + Preis DECIMAL(12,2), + KategorieID INT(12), + Farbcode VARCHAR(7), + PRIMARY KEY(ArtikelID), + FOREIGN KEY(KategorieID) REFERENCES Kategorie(KategorieID), + FOREIGN KEY(Farbcode) REFERENCES Farbe(Farbcode) +)ENGINE=INNODB; + + + +CREATE TABLE Kunde( + KundeID INT(11) AUTO_INCREMENT, + Nachname VARCHAR(45), + Vorname VARCHAR(45), + Straße_NR VARCHAR(45), + PLZID INT(11), + IBAN VARCHAR(34), + BIC VARCHAR(11), + PRIMARY KEY(KundeID) +); + +ALTER TABLE Kunde +CHANGE Straße_NR Strasse VARCHAR(45), +ADD Nummer VARCHAR(3) AFTER Strasse; + +CREATE TABLE Bank( + BIC VARCHAR(11) NOT NULL, + NAME VARCHAR(45), + PLZID INT, + PRIMARY KEY(BIC) +); + +CREATE TABLE Ort( + PLZID INT AUTO_INCREMENT, + PLZ VARCHAR(5), + Stadt VARCHAR(45), + PRIMARY KEY(PLZID) +); + +ALTER TABLE Bank +ADD FOREIGN KEY (PLZID) REFERENCES Ort(PLZID); + +ALTER TABLE Kunde +ADD FOREIGN KEY (PLZID) REFERENCES Ort(PLZID), +ADD FOREIGN KEY (BIC) REFERENCES Bank(BIC); diff --git a/AWP_11fi5/Kosidasdb_2019-12-19.sql b/AWP_11fi5/Kosidasdb_2019-12-19.sql new file mode 100644 index 0000000..a0ef452 --- /dev/null +++ b/AWP_11fi5/Kosidasdb_2019-12-19.sql @@ -0,0 +1,192 @@ +DROP DATABASE IF EXISTS Kosidasdb; + +CREATE DATABASE Kosidasdb; + +USE Kosidasdb; + +-- +-- Table structure for table `ort` +-- + +DROP TABLE IF EXISTS `ort`; +CREATE TABLE `ort` ( + `plzid` int(11) NOT NULL AUTO_INCREMENT, + `plz` varchar(5) DEFAULT NULL, + `stadt` varchar(45) DEFAULT NULL, + PRIMARY KEY (`plzid`) +) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8; + +INSERT INTO `ort` VALUES (1,'90402','Nuernberg'),(2,'80271','Muenchen'),(3,'97070','Wuerzburg'),(4,'97816','Lohr am Main'),(5,'30139','Hannover'),(6,'97084','Wuerzburg'),(7,'97262','Hausen b. Wuerzburg'),(8,'97074','Wuerzburg'),(9,'97273','Kuernach'),(10,'97228','Rottendorf'),(11,'97072','Wuerzburg'),(12,'97279','Prosselsheim'),(13,'97070','Wuerzburg'),(14,'97076','Wuerzburg'); + +-- +-- Table structure for table `kategorie` +-- + +DROP TABLE IF EXISTS `kategorie`; +CREATE TABLE `kategorie` ( + `kategorieid` int(11) NOT NULL AUTO_INCREMENT, + `bezeichnung` varchar(45) DEFAULT NULL, + PRIMARY KEY (`kategorieid`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; + +INSERT INTO `kategorie` VALUES (1,'Schuhe'),(2,'Kleidung'),(3,'Accessoires'); + +-- +-- Table structure for table `farbe` +-- + +DROP TABLE IF EXISTS `farbe`; +CREATE TABLE `farbe` ( + `farbcodes` varchar(10) NOT NULL, + `bezeichnung` varchar(45) DEFAULT NULL, + PRIMARY KEY (`farbcodes`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +INSERT INTO `farbe` VALUES ('#000000','schwarz'),('#0000FF','blau '),('#00FF00','grue?n'),('#c0c0c0','grau'),('#FF0000','rot'),('#FFA500','orange'),('#FFc0cb','pink'),('#FFFF00','gelb'),('#FFFFFF','weiss'); + +-- +-- Table structure for table `bank` +-- + +DROP TABLE IF EXISTS `bank`; + +CREATE TABLE `bank` ( + `bic` varchar(11) NOT NULL, + `name` varchar(45) DEFAULT NULL, + `plzid` int(11) NOT NULL, + PRIMARY KEY (`bic`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +INSERT INTO `bank` VALUES ('BYLADEM1SWU','Sparkasse Mainfranken Wuerzburg',3),('COBADEFFXXX','Commerzbank Nuernberg',1),('DEUTDEMMXXX','Deutsche bank Muenchen',2),('GENODEF1GEM','Raiffeisenbank Main-Spessart',4),('PBNKDEFFXXX','Postbank Hannover',5), ('GENODEF1P17','PSD Nürnberg',1); + +-- +-- Table structure for table `artikel` +-- + +DROP TABLE IF EXISTS `artikel`; +CREATE TABLE `artikel` ( + `artikelid` int(11) NOT NULL AUTO_INCREMENT, + `bezeichnung` varchar(45) DEFAULT NULL, + `kategorie` int(11) NOT NULL, + `farbe` varchar(10) NOT NULL, + `preis` float(10,2) DEFAULT NULL, + PRIMARY KEY (`artikelid`) +) ENGINE=InnoDB AUTO_INCREMENT=134492 DEFAULT CHARSET=utf8; + +INSERT INTO `artikel` VALUES (134456,'Sportschuh River',1,'#000000',59.95),(134457,'Sportschuh River',1,'#0000FF',59.95),(134458,'Sportschuh River',1,'#FF0000',59.95),(134459,'Sportschuh light',1,'#000000',79.99),(134460,'Sportschuh light',1,'#0000FF',79.99),(134461,'Sportschuh light',1,'#FF0000',79.99),(134462,'Sportschuh natural',1,'#000000',69.95),(134463,'Sportschuh natural',1,'#0000FF',69.95),(134464,'Sportschuh natural',1,'#FF0000',69.95),(134465,'UEFA EURO 2016 Deutschland',2,'#FFFFFF',79.95),(134466,'Poloshirt London',2,'#FFFFFF',19.95),(134467,'Poloshirt London',2,'#00FF00',19.95),(134468,'Poloshirt London',2,'#FF0000',19.95),(134469,'Poloshirt London',2,'#c0c0c0',19.95),(134470,'Poloshirt London',2,'#FFFF00',19.95),(134471,'Longsleeve O.L',2,'#FFFFFF',25.90),(134472,'Longsleeve O.L',2,'#00FF00',25.90),(134473,'Longsleeve O.L',2,'#FF0000',25.90),(134474,'Longsleeve O.L',2,'#c0c0c0',25.90),(134475,'Longsleeve O.L',2,'#FFFF00',25.90),(134476,'Longsleeve O.L',2,'#FFA500',25.90),(134477,'Tanktop O.L',2,'#FFFFFF',19.95),(134478,'Tanktop O.L',2,'#00FF00',19.95),(134479,'Tanktop O.L',2,'#FF0000',19.95),(134480,'Tanktop O.L',2,'#c0c0c0',19.95),(134481,'Tanktop O.L',2,'#FFFF00',19.95),(134482,'UEFA EURO 2016 Ball',3,'#FFFFFF',24.95),(134483,'FIFA WM 2014 Ball',3,'#FFFFFF',19.95),(134484,'KOSidas Team-Tasche',3,'#000000',59.90),(134485,'KOSidas Team-Tasche',3,'#c0c0c0',59.90),(134486,'KOSidas Team-Tasche',3,'#0000FF',59.90),(134487,'Trainingshose CHECK',2,'#000000',29.90),(134488,'Trainingshose CHECK',2,'#0000FF',29.90),(134489,'Trainingshose CHECK',2,'#c0c0c0',29.90),(134490,'Trainingshose CHECK',2,'#FFc0cb',29.90),(134491,'Trainingshose CHECK',2,'#FFFF00',29.90); + +-- +-- Table structure for table `kunde` +-- + +DROP TABLE IF EXISTS `kunde`; +CREATE TABLE `kunde` ( + `kundeid` int(11) NOT NULL AUTO_INCREMENT, + `nachname` varchar(45) DEFAULT NULL, + `vorname` varchar(45) DEFAULT NULL, + `strasse` varchar(45) DEFAULT NULL, + `nummer` varchar(3) DEFAULT NULL, + `plzid` int(11) NOT NULL, + `iban` varchar(34) DEFAULT NULL, + `bic` varchar(11) DEFAULT NULL, + PRIMARY KEY (`kundeid`) +) ENGINE=InnoDB AUTO_INCREMENT=1127 DEFAULT CHARSET=utf8; + +INSERT INTO `kunde` VALUES (1111,'Albrecht','Hans','Hauptstrasse', '34',3,'DE10469451550427046185','BYLADEM1SWU'),(1112,'Baertler','Eberhard','Schulstrasse', '12',1,'DE51079383193895505600','COBADEFFXXX'),(1113,'Becker','Claudia','Gartenstrasse','3',1,'DE87280552538644833256','COBADEFFXXX'),(1114,'Hoffmann','Matthias','Bahnhofstrasse','44',4,'DE11313795553717407131','GENODEF1GEM'),(1115,'Kleineschaar','Peter','Bergstrasse','133',5,'DE90309027474883622234','PBNKDEFFXXX'),(1116,'Koenig','Johanna','Birkenweg','2',2,'DE32275197427003047056','DEUTDEMMXXX'),(1117,'Mueller','Michael','Lindenstrasse','78',3,'DE81387768871052634813','BYLADEM1SWU'),(1118,'Neumann','Laura','Kirchstrasse','1',1,'DE41686535144085322226','COBADEFFXXX'),(1119,'Pfennig','Sabine','Waldstrasse','99',5,'DE15122666281748667001','PBNKDEFFXXX'),(1120,'Schaefer','Andreas','Ringstrasse','2',4,'DE41263293419445891556','GENODEF1GEM'),(1121,'Schmidt','Stefan','Schillerstrasse','10a',2,'DE39045846737026319413','DEUTDEMMXXX'),(1122,'Schneider','Lennard','Amselweg','9',2,'DE75809870422109655695','DEUTDEMMXXX'),(1123,'Schulz','Oliver','Jahnstrasse','7',3,'DE18575040339719722166','BYLADEM1SWU'),(1124,'Schwarz','Ulrich','Buchenweg','59',2,'DE98178293021402181160','DEUTDEMMXXX'),(1125,'Wagner','Richi','Wiesenstrasse','71',4,'DE71968839911149658452','GENODEF1GEM'),(1126,'Westermann','Arndt','Am Sportplatz','26',1,'DE75809870422109655695','COBADEFFXXX'); + +-- +-- Table structure for table `mitarbeiter` +-- + +DROP TABLE IF EXISTS `mitarbeiter`; +CREATE TABLE `mitarbeiter` ( + `mitarbeiterid` int(11) NOT NULL, + `nachname` varchar(45) DEFAULT NULL, + `vorname` varchar(45) DEFAULT NULL, + `strasse` varchar(45) DEFAULT NULL, + `nummer` varchar(3) DEFAULT NULL, + `plzid` int(11) NOT NULL, + `geschlecht` char(1) DEFAULT NULL, + `gehalt` float(10,2) DEFAULT NULL, + PRIMARY KEY (`mitarbeiterid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +INSERT INTO `mitarbeiter` VALUES (1002,'Janicks','Inke','Ringweg','11',13,'w',7000.00),(1005,'Zirpe','Michael','Hammelburgerstrasse', '34',6,'m',7000.00),(1006,'Lemme','Markus','Im Trepp','19',7,'m',5300.00),(1007,'Trost','Christiane','Bergstrasse', '46',8,'w',4800.00),(1008,'Schroeter','Roland','Hauptstrasse', '10',9,'m',4500.00),(1009,'Reichelt','Silke','Langestrasse', '54',10,'w',3900.00),(1010,'Pfau','Erich','Hallesche strasse', '16',11,'m',2800.00),(1011,'Taro','Ulrich','Nicolaiplatz', '2',8,'m',2900.00),(1012,'Marx','Christine','Suellerstrasse', '21',12,'w',2100.00),(1013,'Wicki','Joerg','Weidenstrasse', '51',13,'m',2455.00),(1014,'Ecke','Silvia','Brandstrasse', '3b',6,'w',2700.00),(1015,'Mieder','Christa','Dorfweg', '22',12,'w',2600.00),(1016,'Jach','Bernd','Nordstrasse' ,'11',10,'m',1200.00),(1017,'Schockler','Peter','Gerberweg', '1',6,'m',3000.00),(1018,'Renner','Manfred','Launsingerstrasse', '45',14,'m',2555.00); + +-- +-- Table structure for table `bestand` +-- + +DROP TABLE IF EXISTS `bestand`; +CREATE TABLE `bestand` ( + `bestandID` int(11) NOT NULL AUTO_INCREMENT, + `artikelid` int(11) NOT NULL, + `groesse` varchar(3) DEFAULT NULL, + `anzahl` int(11) DEFAULT NULL, + PRIMARY KEY (`bestandID`) +) ENGINE=InnoDB AUTO_INCREMENT=197 DEFAULT CHARSET=utf8; + +INSERT INTO `bestand` VALUES (1,134456,'38',123),(2,134456,'39',125),(3,134456,'40',22),(4,134456,'41',135),(5,134456,'42',67),(6,134456,'43',22),(7,134456,'44',68),(8,134456,'45',142),(9,134456,'46',86),(10,134457,'38',37),(11,134457,'39',133),(12,134457,'40',84),(13,134457,'41',39),(14,134457,'42',62),(15,134457,'43',25),(16,134457,'44',98),(17,134457,'45',63),(18,134457,'46',103),(19,134458,'38',109),(20,134458,'39',138),(21,134458,'40',88),(22,134458,'41',92),(23,134458,'42',53),(24,134458,'43',103),(25,134458,'44',36),(26,134458,'45',57),(27,134458,'46',75),(28,134459,'38',32),(29,134459,'39',40),(30,134459,'40',54),(31,134459,'41',94),(32,134459,'42',46),(33,134459,'43',81),(34,134459,'44',128),(35,134459,'45',75),(36,134459,'46',44),(37,134460,'38',135),(38,134460,'39',101),(39,134460,'40',126),(40,134460,'41',34),(41,134460,'42',18),(42,134460,'43',62),(43,134460,'44',141),(44,134460,'45',75),(45,134460,'46',90),(46,134461,'38',72),(47,134461,'39',84),(48,134461,'40',89),(49,134461,'41',76),(50,134461,'42',31),(51,134461,'43',74),(52,134461,'44',117),(53,134461,'45',144),(54,134461,'46',149),(55,134462,'38',79),(56,134462,'39',34),(57,134462,'40',149),(58,134462,'41',71),(59,134462,'42',108),(60,134462,'43',97),(61,134462,'44',38),(62,134462,'45',31),(63,134462,'46',141),(64,134463,'38',76),(65,134463,'39',39),(66,134463,'40',99),(67,134463,'41',148),(68,134463,'42',73),(69,134463,'43',59),(70,134463,'44',145),(71,134463,'45',66),(72,134463,'46',69),(73,134464,'38',81),(74,134464,'39',102),(75,134464,'40',45),(76,134464,'41',32),(77,134464,'42',120),(78,134464,'43',102),(79,134464,'44',80),(80,134464,'45',13),(81,134464,'46',18),(82,134465,'S',40),(83,134465,'M',51),(84,134465,'L',56),(85,134465,'XL',126),(86,134465,'XXL',75),(87,134466,'S',118),(88,134466,'M',113),(89,134466,'L',62),(90,134466,'XL',96),(91,134466,'XXL',60),(92,134467,'S',100),(93,134467,'M',113),(94,134467,'L',35),(95,134467,'XL',147),(96,134467,'XXL',56),(97,134468,'S',83),(98,134468,'M',92),(99,134468,'L',8),(100,134468,'XL',93),(101,134468,'XXL',67),(102,134469,'S',92),(103,134469,'M',88),(104,134469,'L',29),(105,134469,'XL',79),(106,134469,'XXL',73),(107,134470,'S',11),(108,134470,'M',72),(109,134470,'L',140),(110,134470,'XL',2),(111,134470,'XXL',34),(112,134471,'S',11),(113,134471,'M',90),(114,134471,'L',41),(115,134471,'XL',117),(116,134471,'XXL',90),(117,134472,'S',148),(118,134472,'M',118),(119,134472,'L',132),(120,134472,'XL',91),(121,134472,'XXL',125),(122,134473,'S',79),(123,134473,'M',144),(124,134473,'L',114),(125,134473,'XL',58),(126,134473,'XXL',91),(127,134474,'S',15),(128,134474,'M',100),(129,134474,'L',7),(130,134474,'XL',37),(131,134474,'XXL',109),(132,134475,'S',50),(133,134475,'M',16),(134,134475,'L',56),(135,134475,'XL',60),(136,134475,'XXL',148),(137,134476,'S',87),(138,134476,'M',86),(139,134476,'L',66),(140,134476,'XL',1),(141,134476,'XXL',8),(142,134477,'S',36),(143,134477,'M',129),(144,134477,'L',148),(145,134477,'XL',49),(146,134477,'XXL',118),(147,134478,'S',103),(148,134478,'M',73),(149,134478,'L',126),(150,134478,'XL',49),(151,134478,'XXL',64),(152,134479,'S',56),(153,134479,'M',77),(154,134479,'L',85),(155,134479,'XL',107),(156,134479,'XXL',97),(157,134480,'S',149),(158,134480,'M',28),(159,134480,'L',39),(160,134480,'XL',109),(161,134480,'XXL',123),(162,134481,'S',111),(163,134481,'M',146),(164,134481,'L',134),(165,134481,'XL',46),(166,134481,'XXL',84),(167,134482,'UNI',85),(168,134483,'UNI',9),(169,134484,'UNI',126),(170,134485,'UNI',55),(171,134486,'UNI',133),(172,134487,'S',78),(173,134487,'M',78),(174,134487,'L',74),(175,134487,'XL',139),(176,134487,'XXL',43),(177,134488,'S',127),(178,134488,'M',70),(179,134488,'L',119),(180,134488,'XL',107),(181,134488,'XXL',113),(182,134489,'S',21),(183,134489,'M',129),(184,134489,'L',146),(185,134489,'XL',102),(186,134489,'XXL',94),(187,134490,'S',31),(188,134490,'M',51),(189,134490,'L',130),(190,134490,'XL',83),(191,134490,'XXL',126),(192,134491,'S',3),(193,134491,'M',47),(194,134491,'L',133),(195,134491,'XL',22),(196,134491,'XXL',26); + + +-- +-- Table structure for table `bestellung` +-- + +DROP TABLE IF EXISTS `bestellung`; +CREATE TABLE `bestellung` ( + `bestellid` int(11) NOT NULL AUTO_INCREMENT, + `bestelldatum` date NOT NULL, + `kundeid` int(11) NOT NULL, + PRIMARY KEY (`bestellid`) +) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8; + +INSERT INTO `bestellung` VALUES (1,'2016-05-16',1119),(2,'2016-05-20',1117),(3,'2016-05-23',1122),(4,'2016-05-25',1111),(5,'2016-05-29',1126),(6,'2016-06-01',1115),(7,'2016-06-06',1124),(8,'2016-06-11',1125),(9,'2016-06-18',1113),(10,'2016-06-30',1117); + +-- +-- Table structure for table `posten` +-- + +DROP TABLE IF EXISTS `posten`; + +CREATE TABLE `posten` ( + `bestellid` int(11) NOT NULL, + `artikelid` int(11) NOT NULL, + `anzahl` int(11) DEFAULT NULL, + `groesse` varchar(3) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +INSERT INTO `posten` VALUES (1,134458,1,'40'),(1,134465,1,'M'),(2,134467,1,'M'),(3,134475,2,'L'),(3,134485,1,'UNI'),(3,134491,2,'L'),(4,134481,2,'M'),(4,134483,3,'UNI'),(5,134463,1,'41'),(6,134468,1,'XL'),(7,134458,1,'38'),(7,134465,1,'L'),(7,134468,2,'S'),(8,134487,2,'S'),(9,134479,1,'M'),(9,134490,2,'XXL'),(10,134460,1,'42'); + + +-- ADD FOREIGN KEY Table kunde -- +ALTER TABLE kunde +ADD FOREIGN KEY (plzid) REFERENCES ort(plzid), +ADD FOREIGN KEY (bic) REFERENCES bank(bic); + +-- ADD FOREIGN KEY Table bestellung -- +ALTER TABLE bestellung +ADD FOREIGN KEY (kundeid) REFERENCES kunde(kundeid); + +-- ADD FOREIGN KEY Table posten -- +ALTER TABLE posten +ADD FOREIGN KEY (bestellid) REFERENCES bestellung(bestellid), +ADD FOREIGN KEY (artikelid) REFERENCES artikel(artikelid); + +-- ADD FOREIGN KEY Table artikel -- +ALTER TABLE artikel +ADD FOREIGN KEY (kategorie) REFERENCES kategorie(kategorieid), +ADD FOREIGN KEY (farbe) REFERENCES farbe(farbcodes); + +-- ADD FOREIGN KEY Table mitarbeiter -- +ALTER TABLE mitarbeiter +ADD FOREIGN KEY (plzid) REFERENCES ort(plzid); + +-- ADD FOREIGN KEY Table bestand -- +ALTER TABLE bestand +ADD FOREIGN KEY (artikelid) REFERENCES artikel(artikelid); + +-- ADD FOREIGN KEY Table bank +ALTER TABLE bank +ADD FOREIGN KEY(plzid) REFERENCES ort(plzid); + diff --git a/AWP_11fi5/Rechnung.sql b/AWP_11fi5/Rechnung.sql new file mode 100644 index 0000000..b414285 --- /dev/null +++ b/AWP_11fi5/Rechnung.sql @@ -0,0 +1,70 @@ +DROP DATABASE if EXISTS awp_11fi5_rechnung; +CREATE DATABASE if NOT exists awp_11fi5_rechnung; + +USE awp_11fi5_rechnung; + +CREATE TABLE Kunden( + KNr INT AUTO_INCREMENT, + KName VARCHAR(40), + Vorname VARCHAR(40), + Straße VARCHAR(40), + PLZ VARCHAR(5), + Ort VARCHAR(40), + Telefon VARCHAR(40), + Email VARCHAR(60), + Kartenstatus VARCHAR(40), + PRIMARY KEY(KNr) +); + +CREATE TABLE Gutschriften( + GNr INT AUTO_INCREMENT, + KNr INT, + Datum DATE, + Betrag DECIMAL(10,2), + GText VARCHAR(120), + PRIMARY KEY(GNr), + FOREIGN KEY(KNr) REFERENCES Kunden(KNr) +); + +CREATE TABLE Rechnungen( + RNr INT AUTO_INCREMENT, + KNr INT, + AuftragsNr INT, + Datum DATE, + Betrag DECIMAL(10,2), + Mahnstatus VARCHAR(20), + Mahngebür DECIMAL(10,2), + PRIMARY KEY(RNr), + FOREIGN KEY(KNr) REFERENCES Kunden(KNr) +); + +CREATE TABLE Lastschriften( + LNr INT AUTO_INCREMENT, + KNr INT, + RNr INT, + Datum DATE, + Betrag DECIMAL(10,2), + LText VARCHAR(40), + PRIMARY KEY(LNr), + FOREIGN KEY(KNr) REFERENCES Kunden(KNr), + FOREIGN KEY(RNr) REFERENCES Rechnungen(RNr) +); + +CREATE TABLE Artikel( + ANr INT AUTO_INCREMENT, + Bezeichnung VARCHAR(60), + Bestand INT, + Verkaufspreis_Vorschlag DECIMAL(10,2), + Datum_Änderung_Verkaufspreis DATE, + PRIMARY KEY(ANr) +); + +CREATE TABLE Rechnungspositionen( + RNr INT, + ANr INT, + Menge INT, + Einzelpreis DECIMAL(10,2), + PRIMARY KEY(RNr, ANr), + FOREIGN KEY(RNr) REFERENCES Rechnungen(RNr), + FOREIGN KEY(ANr) REFERENCES Artikel(ANr) +); \ No newline at end of file diff --git a/AWP_11fi5/Tournee ALTER.sql b/AWP_11fi5/Tournee ALTER.sql new file mode 100644 index 0000000..4755f74 --- /dev/null +++ b/AWP_11fi5/Tournee ALTER.sql @@ -0,0 +1,61 @@ +USE awp_11fi5_tournee; + +#1 +ALTER TABLE Tournee +MODIFY Tourneename VARCHAR(50); + + + +#2 +ALTER TABLE Besucher_Veranstaltung +RENAME TO Veranstaltungsbesucher; + +ALTER TABLE Preiskat_Location +RENAME TO Locationpreise; + +ALTER TABLE Preiskat_Veranstaltung +RENAME TO Veranstaltungspreise; + +ALTER TABLE Veranstaltung_Künstler +RENAME TO Teilnehmende_Künstler; + + + +#3 +ALTER TABLE Location +ADD COLUMN Anzahl_Plätze_gesamt INT; + +ALTER TABLE Location +DROP COLUMN Anzahl_Plätze_gesamt; + + + +#4 +ALTER TABLE Künstler +ADD COLUMN Besonderheiten VARCHAR(100); + + + +#5 +CREATE TABLE Ort( + OrtID INT AUTO_INCREMENT, + PLZ VARCHAR(5), + Ort VARCHAR(45), + PRIMARY KEY(OrtID) +); + + + +#6 +ALTER TABLE Künstler +DROP COLUMN PLZ, +DROP COLUMN Ort, +ADD COLUMN OrtID INT, +ADD FOREIGN KEY(OrtID) REFERENCES Ort(OrtID); + +ALTER TABLE Location +DROP COLUMN PLZ, +DROP COLUMN Ort, +ADD COLUMN OrtID INT, +ADD FOREIGN KEY(OrtID) REFERENCES Ort(OrtID); + \ No newline at end of file diff --git a/AWP_11fi5/Tournee.sql b/AWP_11fi5/Tournee.sql new file mode 100644 index 0000000..872ed9e --- /dev/null +++ b/AWP_11fi5/Tournee.sql @@ -0,0 +1,87 @@ +DROP DATABASE if EXISTS awp_11fi5_tournee; +CREATE DATABASE if NOT exists awp_11fi5_tournee; + +USE awp_11fi5_tournee; + +CREATE TABLE Künstler( + Künstler_ID INT AUTO_INCREMENT, + KünstlerName VARCHAR(40), + Straße VARCHAR(40), + Ort VARCHAR(40), + PLZ VARCHAR(10), + PRIMARY KEY(Künstler_ID) +)ENGINE=INNODB; + +CREATE TABLE Tournee( + Tournee_ID INT AUTO_INCREMENT, + Tourneename VARCHAR(40), + PRIMARY KEY(Tournee_ID) +)ENGINE=INNODB; + +CREATE TABLE Location( + Location_ID INT AUTO_INCREMENT, + LocationName VARCHAR(40), + Straße VARCHAR(40), + Ort VARCHAR(40), + PLZ VARCHAR(10), + PRIMARY KEY(Location_ID) +)ENGINE=INNODB; + +CREATE TABLE Preiskategorie( + Kategorie_ID INT AUTO_INCREMENT, + Preisstufe VARCHAR(20), + PRIMARY KEY(Kategorie_ID) +)ENGINE=INNODB; + +CREATE TABLE Besucher( + Besucher_ID INT AUTO_INCREMENT, + Email VARCHAR(60), + PRIMARY KEY(Besucher_ID) +)ENGINE=INNODB; + +CREATE TABLE Veranstaltung( + Veranstaltung_ID INT AUTO_INCREMENT, + Veranstaltung VARCHAR(60), + Beginn TIME, + Datum DATE, + Location_ID INT, + Tournee_ID INT, + PRIMARY KEY(Veranstaltung_ID), + FOREIGN KEY(Location_ID) REFERENCES Location(Location_ID), + FOREIGN KEY(Tournee_ID) REFERENCES Tournee(Tournee_ID) +)ENGINE=INNODB; + +CREATE TABLE Veranstaltung_Künstler( + Künstler_ID INT, + Veranstaltung_ID INT, + GageKünstler DECIMAL(12,2), + PRIMARY KEY(Künstler_ID, Veranstaltung_ID), + FOREIGN KEY(Künstler_ID) REFERENCES Künstler(Künstler_ID), + FOREIGN KEY(Veranstaltung_ID) REFERENCES Veranstaltung(Veranstaltung_ID) +)ENGINE=INNODB; + +CREATE TABLE Preiskat_Veranstaltung( + Kategorie_ID INT, + Veranstaltung_ID INT, + PreisEuro DECIMAL(12,2), + PRIMARY KEY(Veranstaltung_ID, Kategorie_ID), + FOREIGN KEY(Kategorie_ID) REFERENCES Preiskategorie(Kategorie_ID), + FOREIGN KEY(Veranstaltung_ID) REFERENCES Veranstaltung(Veranstaltung_ID) +)ENGINE=INNODB; + +CREATE TABLE Besucher_Veranstaltung( + Besucher_ID INT, + Veranstaltung_ID INT, + Platz VARCHAR(20), + PRIMARY KEY(Besucher_ID, Veranstaltung_ID), + FOREIGN KEY(Besucher_ID) REFERENCES Besucher(Besucher_ID), + FOREIGN KEY(Veranstaltung_ID) REFERENCES Veranstaltung(Veranstaltung_ID) +)ENGINE=INNODB; + +CREATE TABLE Preiskat_Location( + Kategorie_ID INT, + Location_ID INT, + PRIMARY KEY(Kategorie_ID, Location_ID), + FOREIGN KEY(Kategorie_ID) REFERENCES Preiskategorie(Kategorie_ID), + FOREIGN KEY(Location_ID) REFERENCES Location(Location_ID) +)ENGINE=INNODB; diff --git a/AWP_11fi5/luna2000Abfrage.sql b/AWP_11fi5/luna2000Abfrage.sql new file mode 100644 index 0000000..7c0982d --- /dev/null +++ b/AWP_11fi5/luna2000Abfrage.sql @@ -0,0 +1,57 @@ +USE luna2_innodb; + +#a +SELECT * FROM tblabteilung; + +#b +SELECT M_Vorname, M_Name FROM tblmitarbeiter; + +#c +SELECT A_Name, A_Nr FROM tblabteilung WHERE A_Stadt = "München"; + +#d +SELECT M_Vorname, M_Name FROM tblmitarbeiter WHERE M_Nr >= 15000; + +#e +SELECT * FROM tblprojekt WHERE P_Mittel > round(60000*0.9095, 2); + +#f +SELECT M_Nr, P_Nr, T_Taetigkeit FROM tbltaetigkeit WHERE P_Nr = "p2"; + +#g, h +SELECT distinct(M_Nr) FROM tbltaetigkeit WHERE P_Nr IN ("p1", "p2"); + +#i +SELECT M_Nr, M_Name FROM tblmitarbeiter WHERE NOT A_Nr = "a2"; + +#j +SELECT * FROM tblmitarbeiter WHERE M_Nr IN (29346, 28559, 25384); + +#k +SELECT * FROM tblmitarbeiter WHERE M_Nr NOT IN (10102, 9031); + +#l +SELECT P_Name, P_Mittel FROM tblprojekt WHERE P_Mittel BETWEEN 95000 AND 120000; + +#m +SELECT M_Nr FROM tbltaetigkeit WHERE T_Taetigkeit = "Projektleiter" AND NOT YEAR(T_Einstellungsdatum) = 1988; + #T_Einstellungsdatum NOT BETWEEN "1988-01-01" AND "1988-12-31"; + +#n +SELECT M_Nr, P_Nr FROM tbltaetigkeit WHERE T_Taetigkeit IS NULL AND P_Nr = "p1"; + +#o +SELECT M_Vorname, M_Name, M_Nr FROM tblmitarbeiter WHERE M_Name LIKE "K%"; + +#p +SELECT M_Name, M_Vorname, M_Nr FROM tblmitarbeiter WHERE M_Vorname LIKE "_a%"; + +#q +SELECT A_Nr, A_Stadt FROM tblabteilung WHERE A_Name BETWEEN "E%" AND "O%"; + +#r +SELECT M_Name, M_Vorname, M_Nr FROM tblmitarbeiter; +SELECT M_Name, M_Vorname, M_Nr FROM tblmitarbeiter WHERE NOT (M_Name BETWEEN "M%" AND "Q%" OR M_Vorname LIKE "H%"); + +#s +SELECT * FROM tblmitarbeiter WHERE NOT M_Name LIKE "%mann"; \ No newline at end of file diff --git a/AWP_11fi5/luna2000_innodb INSERTS.sql b/AWP_11fi5/luna2000_innodb INSERTS.sql new file mode 100644 index 0000000..dcbd5b4 --- /dev/null +++ b/AWP_11fi5/luna2000_innodb INSERTS.sql @@ -0,0 +1,27 @@ +USE luna2_innodb; + +SELECT * FROM tblabteilung; + +INSERT INTO tblabteilung (A_Nr, A_Name, A_Stadt) VALUES ('a4', 'IT', 'Würzburg'); + +SELECT * FROM tblabteilung; + +INSERT INTO tblabteilung (A_Nr, A_Name) VALUES ('a5', 'Marketing'); + +SELECT * FROM tblabteilung; + +UPDATE tblabteilung SET A_Stadt='Schweinfurt' WHERE A_Nr='a5'; + +SELECT * FROM tblabteilung; + +DELETE FROM tblabteilung WHERE A_nr='a4'; + +SELECT * FROM tblabteilung; + +ALTER TABLE tblabteilung ADD Motivationsspruch VARCHAR(128) DEFAULT 'You are the best!'; + +SELECT * FROM tblabteilung; + +ALTER TABLE tblabteilung DROP COLUMN Motivationsspruch; + +SELECT * FROM tblabteilung; \ No newline at end of file diff --git a/AWP_11fi5/luna2000_innodb.sql b/AWP_11fi5/luna2000_innodb.sql new file mode 100644 index 0000000..339b554 --- /dev/null +++ b/AWP_11fi5/luna2000_innodb.sql @@ -0,0 +1,138 @@ +-- phpMyAdmin SQL Dump +-- version 2.6.0-pl3 +-- http://www.phpmyadmin.net +-- +-- Host: localhost +-- Erstellungszeit: 26. Januar 2005 um 07:28 +-- Server Version: 4.1.8 +-- PHP-Version: 5.0.3 +-- +-- Datenbank: `luna2_innodb` +-- +DROP DATABASE IF EXISTS `luna2_innodb`; +CREATE DATABASE `luna2_innodb` DEFAULT CHARACTER SET latin1 COLLATE latin1_general_ci; +USE luna2_innodb; + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `tblabteilung` +-- + +DROP TABLE IF EXISTS `tblabteilung`; +CREATE TABLE `tblabteilung` ( + `A_Nr` varchar(50) collate latin1_general_ci NOT NULL default '', + `A_Name` varchar(50) collate latin1_general_ci NOT NULL default '', + `A_Stadt` varchar(50) collate latin1_general_ci NOT NULL default '', + PRIMARY KEY (`A_Nr`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci ROW_FORMAT=DYNAMIC; + +-- +-- Daten für Tabelle `tblabteilung` +-- + +INSERT INTO `tblabteilung` (`A_Nr`, `A_Name`, `A_Stadt`) VALUES ('a1', 'Beratung', 'München'), +('a2', 'Diagnose', 'München'), +('a3', 'Freigabe', 'Stuttgart'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `tblmitarbeiter` +-- + +DROP TABLE IF EXISTS `tblmitarbeiter`; +CREATE TABLE `tblmitarbeiter` ( + `M_Nr` bigint(20) NOT NULL default '0', + `A_Nr` varchar(50) collate latin1_general_ci NOT NULL default '', + `M_Name` varchar(50) collate latin1_general_ci NOT NULL default '', + `M_Vorname` varchar(50) collate latin1_general_ci NOT NULL default '', + PRIMARY KEY (`M_Nr`), + KEY `IX_arbeitet` (`A_Nr`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci ROW_FORMAT=DYNAMIC; + +-- +-- Daten für Tabelle `tblmitarbeiter` +-- + +INSERT INTO `tblmitarbeiter` (`M_Nr`, `A_Nr`, `M_Name`, `M_Vorname`) VALUES (2581, 'a2', 'Kaufmann', 'Brigitte'), +(9031, 'a2', 'Meier', 'Rainer'), +(10102, 'a3', 'Huber', 'Petra'), +(18316, 'a1', 'Müller', 'Gabriele'), +(25384, 'a3', 'Keller', 'Hans'), +(28559, 'a1', 'Mozer', 'Sibille'), +(29346, 'a2', 'Probst', 'Andreas'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `tblprojekt` +-- + +DROP TABLE IF EXISTS `tblprojekt`; +CREATE TABLE `tblprojekt` ( + `P_Nr` varchar(50) collate latin1_general_ci NOT NULL default '', + `P_Name` varchar(50) collate latin1_general_ci NOT NULL default '', + `P_Mittel` double NOT NULL default '0', + PRIMARY KEY (`P_Nr`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci ROW_FORMAT=DYNAMIC; + +-- +-- Daten für Tabelle `tblprojekt` +-- + +INSERT INTO `tblprojekt` (`P_Nr`, `P_Name`, `P_Mittel`) VALUES ('p1', 'Apollo', 120000), +('p2', 'Gemini', 95000), +('p3', 'Merkur', 186500); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `tbltaetigkeit` +-- + +DROP TABLE IF EXISTS `tbltaetigkeit`; +CREATE TABLE `tbltaetigkeit` ( + `T_Nr` bigint(20) NOT NULL default '0', + `M_Nr` bigint(20) NOT NULL default '0', + `P_Nr` varchar(50) collate latin1_general_ci NOT NULL default '', + `T_Taetigkeit` varchar(50) collate latin1_general_ci default NULL, + `T_Einstellungsdatum` datetime NOT NULL default '0000-00-00 00:00:00', + PRIMARY KEY (`T_Nr`), + KEY `IX_bearbeitet` (`M_Nr`), + KEY `IX_fuer` (`P_Nr`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci ROW_FORMAT=DYNAMIC; + +-- +-- Daten für Tabelle `tbltaetigkeit` +-- + +INSERT INTO `tbltaetigkeit` (`T_Nr`, `M_Nr`, `P_Nr`, `T_Taetigkeit`, `T_Einstellungsdatum`) VALUES (1, 10102, 'p1', 'Projektleiter', '1988-10-01 00:00:00'), +(2, 10102, 'p3', 'Gruppenleiter', '1989-01-01 00:00:00'), +(3, 25384, 'p2', 'Sachbearbeiter', '1988-02-15 00:00:00'), +(4, 18316, 'p2', NULL, '1989-06-01 00:00:00'), +(5, 29346, 'p2', NULL, '1987-12-15 00:00:00'), +(6, 2581, 'p3', 'Projektleiter', '1989-10-15 00:00:00'), +(7, 9031, 'p1', 'Gruppenleiter', '1989-04-15 00:00:00'), +(8, 28559, 'p1', NULL, '1988-08-01 00:00:00'), +(9, 28559, 'p2', 'Sachbearbeiter', '1989-02-01 00:00:00'), +(10, 9031, 'p3', 'Sachbearbeiter', '1988-11-15 00:00:00'), +(11, 29346, 'p1', 'Sachbearbeiter', '1989-04-01 00:00:00'); + +-- +-- Constraints der exportierten Tabellen +-- + +-- +-- Constraints der Tabelle `tblmitarbeiter` +-- +ALTER TABLE `tblmitarbeiter` + ADD CONSTRAINT `tblmitarbeiter_ibfk_1` FOREIGN KEY (`A_Nr`) REFERENCES `tblabteilung` (`A_Nr`); + +-- +-- Constraints der Tabelle `tbltaetigkeit` +-- +ALTER TABLE `tbltaetigkeit` + ADD CONSTRAINT `tbltaetigkeit_ibfk_1` FOREIGN KEY (`M_Nr`) REFERENCES `tblmitarbeiter` (`M_Nr`), + ADD CONSTRAINT `tbltaetigkeit_ibfk_2` FOREIGN KEY (`P_Nr`) REFERENCES `tblprojekt` (`P_Nr`); + diff --git a/AWP_11fi5/unternehmensDB_2021-02-08.sql b/AWP_11fi5/unternehmensDB_2021-02-08.sql new file mode 100644 index 0000000..1cc16c8 --- /dev/null +++ b/AWP_11fi5/unternehmensDB_2021-02-08.sql @@ -0,0 +1,767 @@ +-- phpMyAdmin SQL Dump +-- version 5.0.4 +-- https://www.phpmyadmin.net/ +-- +-- Host: 127.0.0.1 +-- Erstellungszeit: 08. Feb 2021 um 08:30 +-- Server-Version: 10.4.17-MariaDB +-- PHP-Version: 7.4.13 + +SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; +START TRANSACTION; +SET time_zone = "+00:00"; + + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; + +-- +-- Datenbank: `unternehmensdb` +-- +DROP DATABASE IF EXISTS unternehmensdb; +CREATE DATABASE IF NOT EXISTS `unternehmensdb` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; +USE `unternehmensdb`; + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `abteilung` +-- + +CREATE TABLE `abteilung` ( + `ABTEILUNGSNR` int(11) NOT NULL, + `BEZEICHNUNG` varchar(50) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `abteilung` +-- + +INSERT INTO `abteilung` (`ABTEILUNGSNR`, `BEZEICHNUNG`) VALUES +(1, 'Geschäftsführung'), +(2, 'Support'), +(3, 'Rechnungswesen'), +(4, 'Einkauf'), +(5, 'Vertrieb'), +(6, 'Verwaltung'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `artikel` +-- + +CREATE TABLE `artikel` ( + `ARTIKELNR` int(11) NOT NULL, + `BEZEICHNUNG` varchar(50) DEFAULT NULL, + `HERSTELLER` int(11) DEFAULT NULL, + `NETTOPREIS` decimal(10,2) DEFAULT NULL, + `MWST` int(11) DEFAULT NULL, + `BESTAND` int(11) DEFAULT NULL, + `MINDESTBESTAND` int(11) DEFAULT NULL, + `KATEGORIE` int(11) DEFAULT NULL, + `BESTELLVORSCHLAG` char(1) DEFAULT '0' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `artikel` +-- + +INSERT INTO `artikel` (`ARTIKELNR`, `BEZEICHNUNG`, `HERSTELLER`, `NETTOPREIS`, `MWST`, `BESTAND`, `MINDESTBESTAND`, `KATEGORIE`, `BESTELLVORSCHLAG`) VALUES +(1, '106075', 1, '137.93', 2, 100, 10, 1, '1'), +(2, '106055', 1, '172.14', 2, 100, 10, 1, '1'), +(3, '753S', 2, '111.21', 2, 100, 10, 1, '1'), +(4, '757P', 2, '145.69', 2, 100, 10, 1, '1'), +(5, '1200NF', 2, '602.59', 2, 100, 10, 1, '0'), +(6, 'CanoScan LiDE 20', 7, '47.41', 2, 100, 10, 2, '1'), +(7, 'CanoScan 5000F', 7, '132.76', 2, 100, 10, 2, '0'), +(8, 'Perfection1670', 8, '81.03', 2, 100, 10, 2, '0'), +(9, 'ScanJet 2400', 4, '63.79', 2, 100, 10, 2, '1'), +(10, 'ScanJet 8290', 4, '1507.76', 2, 100, 10, 2, '1'), +(11, 'Millenium G450', 5, '81.03', 2, 100, 10, 3, '0'), +(12, 'Millenium G550', 5, '85.34', 2, 100, 10, 3, '0'), +(13, 'Millenium G650', 5, '137.07', 2, 100, 10, 3, '1'), +(14, 'Millenium P750', 5, '197.41', 2, 5, 10, 3, '1'), +(15, 'Parhelia 512', 5, '309.48', 2, 100, 10, 3, '1'), +(16, 'SV0802N', 2, '55.17', 2, 100, 10, 4, '1'), +(17, 'SP0802N', 2, '63.79', 2, 100, 10, 4, '0'), +(18, 'SV1203N', 2, '72.41', 2, 100, 10, 4, '1'), +(19, 'SP1604N', 2, '93.97', 2, 100, 10, 4, '1'), +(20, 'MHT2060AH', 9, '197.41', 2, 100, 10, 4, '0'), +(21, 'Aureon 5.1 Fun', 6, '33.62', 2, 100, 10, 5, '1'), +(22, 'Aureon 5.1 Fun Games', 6, '42.24', 2, 100, 10, 5, '1'), +(23, 'Aureon 5.1 Sky', 6, '68.10', 2, 100, 10, 5, '1'), +(24, 'Aureon 5.1 USB', 6, '85.34', 2, 100, 10, 5, '0'), +(25, 'Aureon 5.1 Universe', 6, '206.03', 2, 100, 10, 5, '0'), +(26, 'Internet Keyboard', 10, '17.23', 2, 100, 10, 6, '0'), +(27, 'Office Keyboard', 10, '25.85', 2, 100, 10, 6, '1'), +(28, 'Natural MultiMedia', 10, '23.28', 2, 100, 10, 6, '1'), +(29, 'MultiMedia Keyboard refresh', 10, '27.59', 2, 100, 10, 6, '0'), +(30, 'WL Optical Desctop for Bluetooth', 10, '128.45', 2, 100, 10, 6, '1'), +(31, 'DeskJet 3520', 4, '33.62', 2, 100, 10, 7, '1'), +(32, 'OfficeJet 7140xi', 4, '539.97', 2, 100, 10, 7, '0'), +(33, 'LaserJet 1150', 4, '240.51', 2, 100, 10, 7, '1'), +(34, 'i250', 7, '46.55', 2, 100, 10, 7, '1'), +(35, 'BJC-5500', 7, '645.69', 2, 100, 10, 7, '0'), +(36, 'Stylus C44 Plus', 8, '46.55', 2, 100, 10, 7, '0'), +(37, 'Stylus Photo R300', 8, '150.00', 2, 100, 10, 7, '1'), +(38, 'Basic Optical Mouse SB', 10, '12.07', 2, 100, 10, 10, '1'), +(39, 'Mouse Blue', 10, '25.00', 2, 100, 10, 10, '1'), +(40, 'Wireless InteliMouse Explorer BT', 10, '72.41', 2, 100, 10, 10, '0'), +(41, 'Windows 2000 Professional', 10, '124.14', 2, 100, 10, 8, '0'), +(42, 'Windows XP Home Edition', 10, '101.97', 2, 100, 10, 8, '1'), +(43, 'Office XP Pro', 10, '516.38', 2, 100, 10, 8, '1'), +(44, 'Visual Studio.NET 2003', 10, '1766.38', 2, 100, 10, 8, '1'), +(45, 'Works Suite 2004', 10, '93.97', 2, 100, 10, 8, '1'), +(46, 'SC-152A', 2, '13.79', 2, 100, 10, 9, '1'), +(47, 'SW252', 2, '33.62', 2, 100, 10, 9, '0'), +(48, 'SM-352', 2, '59.48', 2, 100, 10, 9, '1'), +(49, 'SD-616', 2, '25.00', 2, 100, 10, 9, '1'), +(50, 'SC-152A schwarz', 2, '14.66', 2, 100, 10, 9, '1'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `bestellung` +-- + +CREATE TABLE `bestellung` ( + `BESTELLNR` int(11) NOT NULL, + `KUNDENNR` int(11) DEFAULT NULL, + `BESTELLDATUM` date DEFAULT NULL, + `LIEFERDATUM` date DEFAULT NULL, + `RECHNUNGSBETRAG` decimal(10,2) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `bestellung` +-- + +INSERT INTO `bestellung` (`BESTELLNR`, `KUNDENNR`, `BESTELLDATUM`, `LIEFERDATUM`, `RECHNUNGSBETRAG`) VALUES +(1, 1, '2001-02-20', '2001-11-20', '359.68'), +(2, 2, '2001-02-20', '2001-11-20', '107.99'), +(3, 3, '2001-02-20', '2001-11-20', '322.99'), +(4, 4, '2001-02-20', '2001-11-20', '109.00'), +(5, 5, '2001-02-20', '2001-11-20', '109.00'), +(6, 6, '2001-02-20', '2001-11-20', '31.99'), +(7, 7, '2001-02-20', '2001-11-20', '267.99'), +(8, 8, '2001-02-20', '2001-11-20', '98.99'), +(9, 9, '2001-02-20', '2001-11-20', '29.00'), +(10, 10, '2001-02-20', '2001-11-20', '388.00'), +(11, 11, '2001-02-20', '2001-11-20', '229.00'), +(12, 12, '2001-02-20', '2001-11-20', '54.00'), +(13, 13, '2001-02-20', '2001-11-20', '173.00'), +(14, 14, '2001-02-20', '2001-11-20', '164.99'), +(15, 15, '2001-02-20', '2001-11-20', '54.00'), +(16, 16, '2001-02-20', '2001-11-20', '156.00'), +(17, 17, '2001-02-20', '2001-11-20', '54.00'), +(18, 18, '2001-02-20', '2001-11-20', '54.00'), +(19, 19, '2001-02-20', '2001-11-20', '144.00'), +(20, 20, '2001-02-20', '2001-11-20', '74.00'), +(21, 21, '2001-02-20', '2001-11-20', '599.05'), +(22, 22, '2001-02-20', '2001-11-20', '109.01'), +(23, 23, '2001-02-20', '2001-11-20', '626.37'), +(24, 24, '2001-02-20', '2001-11-20', '457.99'), +(25, 25, '2001-02-20', '2001-11-20', '27.00'), +(26, 9, '2001-02-20', '2001-11-20', '171.99'), +(27, 26, '2001-02-20', '2001-11-20', '54.00'), +(28, 27, '2001-02-20', '2001-11-20', '84.00'), +(29, 28, '2001-02-20', '2001-11-20', '797.99'), +(30, 29, '2001-02-20', '2001-11-20', '81.01'), +(31, 30, '2001-02-20', '2001-11-20', '359.00'), +(32, 31, '2001-02-20', '2001-11-20', '84.00'), +(33, 15, '2001-02-20', '2001-11-20', '28.00'), +(34, 32, '2001-02-20', '2001-11-20', '169.00'), +(35, 33, '2001-02-20', '2001-11-20', '239.00'), +(36, 4, '2001-02-20', '2001-11-20', '736.36'), +(37, 34, '2001-02-20', '2001-11-20', '109.01'), +(38, 35, '2001-02-20', '2001-11-20', '118.29'), +(39, 36, '2001-02-20', '2001-11-20', '148.99'), +(40, 37, '2001-02-20', '2001-11-20', '74.00'), +(41, 38, '2001-02-20', '2001-11-20', '188.00'), +(42, 39, '2001-02-20', '2001-11-20', '59.97'), +(43, 40, '2001-02-20', '2001-11-20', '84.00'), +(44, 41, '2001-02-20', '2001-11-20', '98.99'), +(45, 42, '2001-02-20', '2001-11-20', '154.00'), +(46, 23, '2001-02-20', '2001-11-20', '14.00'), +(47, 43, '2001-02-20', '2001-11-20', '39.00'), +(48, 44, '2001-02-20', '2001-11-20', '0.00'), +(49, 45, '2001-02-20', '2001-11-20', '626.37'), +(50, 46, '2001-02-20', '2001-11-20', '127.99'), +(51, 47, '2001-02-20', '2001-11-20', '198.00'), +(52, 7, '2001-02-20', '2001-11-20', '81.01'), +(53, 48, '2001-02-20', '2001-11-20', '54.00'), +(54, 49, '2001-02-20', '2001-11-20', '144.00'), +(55, 50, '2001-02-20', '2001-11-20', '457.99'), +(56, 51, '2001-02-20', '2001-11-20', '32.00'), +(57, 42, '2001-02-20', '2001-11-20', '160.00'), +(58, 52, '2001-02-20', '2001-11-20', '84.00'), +(59, 53, '2001-02-20', '2001-11-20', '1252.73'), +(60, 54, '2001-02-20', '2001-11-20', '98.99'), +(61, 55, '2001-02-20', '2001-11-20', '258.01'), +(62, 56, '2001-02-20', '2001-11-20', '201.99'), +(63, 57, '2001-02-20', '2001-11-20', '169.00'), +(64, 58, '2001-02-20', '2001-11-20', '397.28'), +(65, 2, '2001-02-20', '2001-11-20', '3798.00'), +(66, 59, '2001-02-20', '2001-11-20', '131.98'), +(67, 60, '2001-02-20', '2001-11-20', '308.98'), +(68, 29, '2001-02-20', '2001-11-20', '159.00'), +(69, 61, '2001-02-20', '2001-11-20', '462.00'), +(70, 62, '2001-02-20', '2001-11-20', '150.00'), +(71, 36, '2001-02-20', '2001-11-20', '82.00'), +(72, 63, '2001-02-20', '2001-11-20', '4235.97'), +(73, 64, '2001-02-20', '2001-11-20', '768.00'), +(74, 17, '2001-02-20', '2001-11-20', '2442.26'), +(75, 43, '2001-02-20', '2001-11-20', '1506.26'), +(76, 65, '2001-02-20', '2001-11-20', '1429.38'), +(77, 66, '2001-02-20', '2001-11-20', '1699.98'), +(78, 67, '2001-02-20', '2001-11-20', '839.99'), +(79, 68, '2001-02-20', '2001-11-20', '198.00'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `hersteller` +-- + +CREATE TABLE `hersteller` ( + `HERSTELLERNR` int(11) NOT NULL, + `NAME` varchar(50) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `hersteller` +-- + +INSERT INTO `hersteller` (`HERSTELLERNR`, `NAME`) VALUES +(1, 'Belinea'), +(2, 'Samsung'), +(3, 'Sony'), +(4, 'HP'), +(5, 'Matrox'), +(6, 'Terratec'), +(7, 'Canon'), +(8, 'Epson'), +(9, 'Fujitsu'), +(10, 'Microsoft'), +(11, 'Asus'), +(12, 'Acer'), +(13, 'Dell'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `jobticket` +-- + +CREATE TABLE `jobticket` ( + `ID` int(11) NOT NULL, + `BESTELLNR` int(11) DEFAULT NULL, + `MITARBEITERNR` int(11) DEFAULT NULL, + `GUELTIG_BIS` date DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `jobticket` +-- + +INSERT INTO `jobticket` (`ID`, `BESTELLNR`, `MITARBEITERNR`, `GUELTIG_BIS`) VALUES +(1, 1, 1, '2001-01-20'), +(2, 1, 1, '2001-01-20'), +(3, 4, 2, '2001-01-23'), +(4, 6, 2, '2001-01-23'), +(5, 6, 2, '2001-01-25'), +(6, 7, 3, '2001-02-03'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `kategorie` +-- + +CREATE TABLE `kategorie` ( + `KATEGORIENR` int(11) NOT NULL, + `BEZEICHNUNG` varchar(50) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `kategorie` +-- + +INSERT INTO `kategorie` (`KATEGORIENR`, `BEZEICHNUNG`) VALUES +(1, 'Monitore'), +(2, 'Scanner'), +(3, 'Grafikkarten'), +(4, 'Festplatten'), +(5, 'Soundkarten'), +(6, 'Keyboards'), +(7, 'Drucker'), +(8, 'Software'), +(9, 'Laufwerke'), +(10, 'Mäuse'), +(11, '3,5-Zoll-Disketten'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `kunde` +-- + +CREATE TABLE `kunde` ( + `KUNDENNR` int(11) NOT NULL, + `NAME` varchar(50) DEFAULT NULL, + `VORNAME` varchar(50) DEFAULT NULL, + `STRASSE` varchar(50) DEFAULT NULL, + `PLZ` char(14) DEFAULT NULL, + `ORT` varchar(50) DEFAULT NULL, + `TELEFON_GESCH` varchar(25) DEFAULT NULL, + `TELEFON_PRIVAT` varchar(25) DEFAULT NULL, + `EMAIL` varchar(50) DEFAULT NULL, + `ZAHLUNGSART` char(1) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `kunde` +-- + +INSERT INTO `kunde` (`KUNDENNR`, `NAME`, `VORNAME`, `STRASSE`, `PLZ`, `ORT`, `TELEFON_GESCH`, `TELEFON_PRIVAT`, `EMAIL`, `ZAHLUNGSART`) VALUES +(1, 'Loewe', 'Arthur', 'Sebastianstraße 134', '50737', 'Köln', NULL, '19467383', NULL, 'B'), +(2, 'Adler', 'Felix', 'Goethestraße 4', '30453', 'Hannover', '9856023452', '10562382', 'adler@on-line.de', 'R'), +(3, 'Stein', 'Johannes', 'Elisabethenstr. 23', '53111', 'Bonn', '99746227', '99746228', 'johnny@hip.de', 'N'), +(4, 'Falkner', 'Michael', 'Querfeldstraße 21', '65187', 'Wiesbaden', '13726583', '48892768', 'mischa24@wysiwyg.com', 'V'), +(5, 'Lederer', 'Helene', 'Rennbahnstraße 6', '50733', 'Köln', '87126534', '32675491', 'lele@lederer-world.de', 'K'), +(6, 'Kogen', 'Arnold', 'Clara-Viebig-Straße 17', '53179', 'Bonn', NULL, '55819269', NULL, 'B'), +(7, 'Schneider', 'Benedikt', 'Vahrendorfer Stadtweg 61', '21075', 'Hamburg', NULL, '93728815', 'benni@postfach-online.de', 'B'), +(8, 'Dietrich', 'Diana', 'Kastanienallee 675', '65199', 'Wiesbaden', NULL, '56112894', 'diedietrich@on-line.de', 'V'), +(9, 'Voglin', 'Jakob', 'Engeldamm 34', '12487', 'Berlin', '999657324', '12432673', 'voglin@berliner-tagblatt.de', 'K'), +(10, 'Stern', 'Martin', 'Knaufstraße 453', '50858', 'Köln', '72891174', '17582964', 'martin.stern@on-line.de', 'B'), +(11, 'Marsch', 'Ronald', 'Große Telegraphenstraße 95', '50769', 'Köln', '16547326', '99234713', 'ronnie@on-line.de', 'B'), +(12, 'Fromkess', 'Leon', 'Schmittgasser Kirchweg 44', '53129', 'Bonn', '67346248', '19684375', 'leon.fromkess@lola.com', 'R'), +(13, 'Badel', 'Sarah', 'Am Ginsterpfad 74', '51147', 'Köln', '17483763', '82675271', 's.badel@on-line.de', 'R'), +(14, 'Schäfer', 'Willi', 'Bei der blauen Brücke 119', '22083', 'Hamburg', '02857204', '86756251', 'schaefer32@lola.com', 'R'), +(15, 'Front', 'Jeremias', 'Reichskanzlerstraße 71', '22525', 'Hamburg', '5685710', '86957248', 'jerry@gartenlaubenfreunde.de', 'B'), +(16, 'Wilhelms', 'Simon', 'Gustav-Freytag-Straße 22', '51069', 'Köln', '19785737', '98760438', NULL, 'N'), +(17, 'Grunpeter', 'Sascha', 'Pascalstraße 64', '52121', 'Bonn', '918574736', '11768462', 'sagrun@lola.com', 'R'), +(18, 'Marx', 'Alfred', 'Gabriele-Muenter-Straße 102', '51371', 'Leverkusen', '02759285', '849647286', 'alfred_marx@on-line.de', 'R'), +(19, 'Kops', 'Bernhard', 'Gunther-Plüschow-Straße 47', '50739', 'Köln', '10675849', '61969285', 'berniekops@lola.com', 'B'), +(20, 'Elson', 'Andrea', 'Herzog-Alf-Weg 13', '20459', 'Hamburg', '28795823', '967584483', 'elson@elsons-laedchen.de', 'R'), +(21, 'Kaplan', 'Marvin', 'Oskar-Schlemmer-Straße 72', '50933', 'Köln', NULL, '96857385', 'marvin@marc-aurel-jg-2001.de', 'K'), +(22, 'Glaister', 'Gabrielle', 'Simrockallee 2', '53227', 'Bonn', '97857358', '304760583', 'gabyglaister@on-line.de', 'N'), +(23, 'Knutt', 'Robert', 'Metzgerstraße 81', '52076', 'Aachen', '29786682', '10684937', 'robert@robert-knutt.de', 'B'), +(24, 'Reiner', 'Robert', 'Pattscheider Weg 7', '51147', 'Köln', '19587238', '017589375', 'meathead@lola.com', 'B'), +(25, 'Grunert', 'Paul', 'Jütländer Allee 236', '22415', 'Hamburg', '19473825', '47294978', 'paul@briefmarken-hamburg.de', 'R'), +(26, 'Free', 'Oliver', 'Pferdmengesstraße 58', '50672', 'Köln', '19473067', '94728395', 'ollifree@fc-koelle-for-ever.de', 'K'), +(27, 'Frankau', 'Nicholas', 'Rennbahnstraße 83', '65207', 'Wiesbaden', '10264738', '91650376', 'nick.frank@on-line.de', 'R'), +(28, 'Weinberger', 'Eduard', 'Modersohnstraße 112', '10965', 'Berlin', '57480399', '10275748', 'weinberger@lola.com', 'K'), +(29, 'Mann', 'Miriam', 'Wielandplatz 8', '99425', 'Weimar', '19786854', '19786743', 'miriam-mann@on-line.de', 'N'), +(30, 'Waring', 'Georg', 'Merkenicher Ringstraße 313', '51103', 'Köln', '01896748', '71835738', 'waring@polstermoebel-schmidt.de', 'R'), +(31, 'Locke', 'Albert', 'Bundesgrenzschutzplatz 32', '53177', 'Bonn', '47382765', '19684758', 'Bertie@Wooster.de', 'K'), +(32, 'Mills', 'Michael', 'Im Grund 4', '51063', 'Köln', '86758685', '10894519', 'michael@mills-and-more.de', 'R'), +(33, 'Brisebois', 'Danielle', 'Bismarckstraße 9', '53721', 'Siegburg', '91856748', '27685710', 'danielle@tricatel.fr', 'R'), +(34, 'Dorning', 'Robert', 'Hunnebeckweg 21', '48147', 'Münster', '57483910', '153424352', 'dorne@hip.de', 'N'), +(35, 'Sperber', 'Milo', 'Zypressenweg 3', '22457', 'Hamburg', '67582978', '564736540', 'milo@lola.com', 'B'), +(36, 'Fabrizi', 'Mario', 'Auf dem Hunnenrücken 19', '50999', 'Köln', '142398079', '09978699', 'mario.fabrizi@on-line.de', 'K'), +(37, 'Anderson', 'Margarete', 'Machabäerstraße 34', '50735', 'Köln', '27685741', '09987890', 'gretel.anderson@on-line.de', 'V'), +(38, 'May', 'Jakob', 'In der Dasladen 9', '51373', 'Leverkusen', '197869504', '19785673', 'mayday@pc-helfer-leverkusen.de', 'N'), +(39, 'Palk', 'Anna', 'Winston-Churchill-Straße 80', '53129', 'Bonn', '197867513', '154635241', 'anpal@on-line.de', 'R'), +(40, 'Kaufmann', 'Andreas', 'Am Alten Brauhaus 11', '51105', 'Köln', '0796835460', '01758362', 'andy@koelner-taxis.de', 'V'), +(41, 'Bussell', 'Mark', 'Hanfgartenstraße 63', '81475', 'München', '473829201', '13246359', 'bussell@bavaria-bank.de', 'R'), +(42, 'Clement', 'Richard', 'Fröbelstraße 26', '12161', 'Berlin', NULL, '57297867', 'clem@on-line.de', 'B'), +(43, 'Handl', 'Irene', 'Berberitzenweg 7', '50678', 'Köln', '84736291', '98675842', 'irenehandl@lola.com', 'R'), +(44, 'Landesberg', 'Stefan', 'Kleiner Griechenmarkt 19', '51107', 'Köln', '08978569', '186759472', 'Steve@metal-rules.de', 'N'), +(45, 'Lenhart', 'Heidi', 'Mozartstraße 73', '51371', 'Leverkusen', '19705832', '879685740', 'heidi@montana-dreaming.de', 'R'), +(46, 'Wendt', 'Georg', 'Froschkönigweg 32', '50767', 'Köln', '23142312', '06905964', 'Georg@on-line.de', 'R'), +(47, 'Masur', 'Richard', 'Up den Wiemen 46', '22609', 'Hamburg', '29671323', '29685749', 'masur@on-line.de', 'R'), +(48, 'Gross', 'Michael', 'Neptunstraße 33', '12621', 'Berlin', '37685940', '197867580', 'm.gross@lola.com', 'B'), +(49, 'Hirsch', 'Andreas', 'Waidmarkt 16', '50735', 'Köln', '19783060', '57483657', 'andreas.hirsch@on-line.de', 'N'), +(50, 'Hecht', 'Jessica', 'Im Teich 42', '51105', 'Köln', '26453756', '98786029', 'jessie.hecht@lola.com', 'R'), +(51, 'Kaminski', 'Melvin', 'Neue ABC-Straße 504', '22607', 'Hamburg', '97860169', '57192060', 'mel@bancroft-and-brooks.com', 'B'), +(52, 'Schäfer', 'Natalie', 'Mittelstraße 50', '53225', 'Bonn', '58672901', '91254341', 'nati@on-line.de', 'N'), +(53, 'Persky', 'Lisa', 'Keplerstraße 48', '40489', 'Düsseldorf', '19562109', '38295647', 'lisa.persky@kunsthaus-persky.de', 'N'), +(54, 'Steuer', 'Paul', 'Langweidenstraße 67', '60386', 'Frankfurt Main', '01867493', '19887960', 'paul.steuer@on-line.de', 'R'), +(55, 'Karn', 'Richard', 'Jan-Wellem-Straße 34', '50668', 'Köln', '97860927', '37681936', 'karn.koeln@on-line.de', 'V'), +(56, 'Barron', 'Marion', 'Im Fuldchen 7', '60435', 'Frankfurt Main', '13241735', '91703275', 'barron.marion@lola.com', 'B'), +(57, 'Mull', 'Martin', 'Rautendeleinweg 29', '40593', 'Düsseldorf', '10923874', '57463524', 'mamu@on-line.de', 'N'), +(58, 'Kay', 'Sylvia', 'Gutzkowstraße 58', '21079', 'Hamburg', '95847772', '17584637', 'kay@web-postfaecher.de', 'R'), +(59, 'Singer', 'Alex', 'Neumoorstück 15', '20459', 'Hamburg', '96857682', '19685733', 'alex@lola.com', 'N'), +(60, 'Zagorsky', 'Annette', 'Isarstraße 75', '30559', 'Hannover', '286957483', '10395738', 'annette@zagorsky-verlag-und-druck.de', 'R'), +(61, 'Hecht', 'Gina', 'Schulgasse 28', '65207', 'Wiesbaden', '195748372', '83746293', 'gina.hecht@on-line.de', 'R'), +(62, 'Penner', 'Jonathan', 'Von-Lapp-Straße 66', '53125', 'Bonn', '17581253', '28547639', 'penner@lola.com', 'B'), +(63, 'Kampmann', 'Stefan', 'Gustav-Mahler-Straße 64', '50733', 'Köln', '19463827', '12647366', 'kampmann@computer-kampmann.de', 'R'), +(64, 'Rasche', 'David', 'Boxgraben 9', '52078', 'Aachen', '18675943', '19574838', 'dave@com-cafe.de', 'N'), +(65, 'Wolf', 'Susanne', 'Veilchenstieg 26', '22297', 'Hamburg', '96857486', '768574676', 'susi.wolf@on-line.de', 'R'), +(66, 'Barber', 'Paul', 'Mühlenweg 19', '10405', 'Berlin', NULL, '46375483', NULL, 'R'), +(67, 'Martin', 'Melanie', 'Löwengasse 17', '51105', 'Köln', '57465748', '97867586', 'melanie.martin@on-line.de', 'R'), +(68, 'Lukas', 'Karl', 'Max-Hartig-Weg 20', '60386', 'Frankfurt Main', '91657438', '35462817', 'k.lukas@lola.com', 'N'), +(69, 'Zucker', 'David', 'Abbestraße 38', '09114', 'Chemnitz', '97860231', '16453271', 'd.zucker@zucker-suess.de', 'R'), +(70, 'Sim', 'Gerald', 'Lobositzstraße 63', '51103', 'Köln', '57463892', '18675290', 'gerald.s@on-line.de', 'R'), +(71, 'Arnold', 'Thomas', 'Industriestraße 543', '21109', 'Hamburg', '18796851', '57481503', 'tom@mayim-bialik-fans.de', 'B'), +(72, 'Hart', 'Melissa', 'Gurkenweg 4', '30655', 'Hannover', '94768592', '37685749', 'lisa.hart@lola.com', 'R'), +(73, 'Ure', 'Gudrun', 'Lochumer Weg 23', '50668', 'Köln', NULL, '28675942', 'gudrun.ure@on-line.de', 'N'), +(74, 'Anwar', 'Mina', 'Putzdelle 86', '51379', 'Leverkusen', '19675849', '16574638', 'm.anwar@on-line.de', 'N'), +(75, 'Kerr', 'Annette', 'Brander Heide 37', '52066', 'Aachen', '19786758', '97867592', 'anette.kerr@modehaus-kerr-aachen.de', 'R'), +(76, 'Lembeck', 'Helene', 'Fuldaer Straße 73', '60486', 'Frankfurt Main', '67581930', '19786024', 'lele39@on-line.de', 'V'), +(77, 'Fleischer', 'Karl', 'Kriemhildstraße 38', '21109', 'Hamburg', '18695783', '97867261', 'fleischer@web-postfaecher.de', 'R'), +(78, 'Kaufmann', 'Andreas', 'Fabriciusstieg 47', '20257', 'Hamburg', '96847392', '53427164', 'andreas.kaufmann@zmuda.de', 'K'), +(79, 'Eles', 'Sandor', 'Diedenhofer Straße 63', '22419', 'Hamburg', '98362781', '87926715', 'sandor.eles@on-line.de', 'R'), +(80, 'Voland', 'Herbert', 'Düsseldorfer Straße 90', '50939', 'Köln', '86932710', '83756493', 'herbert.voland@on-line.de', 'R'), +(81, 'Stoller', 'Alfred', 'Voltastraße 53', '60388', 'Frankfurt Main', '00418673', '65884192', 'alfi.stoller@lola.com', 'N'), +(82, 'Martin', 'Georg', 'Hermesgasse 17', '51145', 'Köln', '29675813', '16475855', 'g.martin@web-postfaecher.de', 'B'), +(83, 'Durdan', 'Richard', 'Görlitzer Straße 41', '60313', 'Frankfurt Main', '96815376', '27681930', 'dickdurdan@lola.com', 'K'), +(84, 'Bonner', 'Frank', 'Shakespeareplatz 35', '14055', 'Berlin', '36277361', '17564832', 'frank.bonner2@on-line.de', 'R'), +(85, 'Baden-Semper', 'Nina', 'Brookdamm 68', '20457', 'Hamburg', '27564932', '04437193', 'nina@web-postfaecher.de', 'R'), +(86, 'Mandan', 'Robert', 'Kösener Weg 8', '40489', 'Düsseldorf', '56473329', '17564932', 'robert.mandan@on-line.de', 'N'), +(87, 'Fenacolini', 'Anna', 'Josef-Hirn-Platz 4', '50597', 'Stuttgart', '19685493', '57463829', 'anna.fenacolini@stuttgart-uni.de', 'R'), +(88, 'Hordern', 'Michael', 'Schwengelkamp 44', '20255', 'Hamburg', '19685723', '375847650', 'michael.hordern@on-line.de', 'R'), +(89, 'Dane', 'Alexandra', 'Langeler Kreuzweg 92', '51063', 'Köln', '195647382', '95768323', 'xandra@fc-koelle-for-ever.de', 'N'), +(90, 'Scolari', 'Peter', 'Ella-Kay-Straße 85', '13357', 'Berlin', '18574639', '26574619', 'peter.scolari@on-line.de', 'R'), +(91, 'Herbert', 'Philipp', 'Am Pulverhof 52', '22045', 'Hamburg', '28576462', '82868584', 'philipp.herbert@lola.com', 'R'), +(92, 'Kraft', 'Robert', 'Hohenzollernring 103', '14129', 'Berlin', '18463728', '07869237', 'kraft@tierhaus-kraft.de', 'N'), +(93, 'Donner', 'Robert', 'Bebelplatz 12', '51149', 'Köln', '18679684', '37586472', 'donner@donner-und-blitz-medien.de', 'R'), +(94, 'Sadowsky', 'Adam', 'Colmarer Straße 73', '28327', 'Bremen', '96857328', '17564834', 'adam.sadowsky@on-line.de', 'R'), +(95, 'Hartman', 'Philipp', 'Hamburger Hochstraße 19', '22767', 'Hamburg', '29371826', '85647291', 'philipp@radio-bill.de', 'N'), +(96, 'Piekarsky', 'Julia', 'Quinxer Straße 6', '52074', 'Aachen', '28574639', '17685743', 'piekarsky@web-postfaecher.de', 'R'), +(97, 'Eiding', 'Paul', 'Goerdelerstraße 37', '65195', 'Wiesbaden', NULL, '27564832', NULL, 'N'), +(98, 'Ritter', 'Hannes', 'Emschertalstraße 73', '44149', 'Dortmund', '27584637', NULL, 'hannes.ritter@lola.com', 'R'), +(99, 'Adrian', 'Iris', 'Vulkanstraße 46', '50677', 'Köln', '18675943', '27564839', 'iris.adrian@on-line.de', 'N'), +(100, 'Slotky', 'Anna', 'Anita-Ree-Straße 61', '22087', 'Hamburg', '28574635', '29186753', 'slotky@zzzorro.de', 'K'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `mitarbeiter` +-- + +CREATE TABLE `mitarbeiter` ( + `MITARBEITERNR` int(11) NOT NULL, + `NAME` varchar(50) DEFAULT NULL, + `VORNAME` varchar(50) DEFAULT NULL, + `STRASSE` varchar(50) DEFAULT NULL, + `PLZ` char(14) DEFAULT NULL, + `ORT` varchar(50) DEFAULT NULL, + `GEHALT` decimal(10,2) DEFAULT NULL, + `ABTEILUNG` int(11) DEFAULT NULL, + `TELEFONNUMMER` varchar(25) DEFAULT NULL, + `EMAIL` varchar(50) DEFAULT NULL, + `EINTRITTSDATUM` date DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `mitarbeiter` +-- + +INSERT INTO `mitarbeiter` (`MITARBEITERNR`, `NAME`, `VORNAME`, `STRASSE`, `PLZ`, `ORT`, `GEHALT`, `ABTEILUNG`, `TELEFONNUMMER`, `EMAIL`, `EINTRITTSDATUM`) VALUES +(1, 'Ross', 'Hagen', 'Hauptstraße 67', '53123', 'Bonn', '7500.00', 1, '43567890', 'hagen.ross@beispielfirma.de', '1986-01-01'), +(2, 'Roberts', 'Patrick', 'Schillerstraße 154', '53229', 'Bonn', '7000.00', 1, '98761462', 'p.roberts@beispielfirma.de', '1986-01-01'), +(3, 'Hummer', 'Stefan', 'Sonnenhag 74', '53175', 'Bonn', '7000.00', 1, '98120421', 'stefanhummer@beispielfirma.de', '1986-01-01'), +(4, 'Gerhard', 'David', 'Nibelungenstraße 21', '52115', 'Bonn', '2500.00', 2, '67294738', 'dave.g@beispielfirma.de', '1986-01-01'), +(5, 'Weinert', 'Eduard', 'Quellenweg 57', '53177', 'Bonn', '2000.00', 2, '78646193', 'eduard.weinert@beispielfirma.de', '1986-01-01'), +(6, 'Michaels', 'Connie', 'Benedek Straße 5', '53756', 'St. Augustin', '2500.00', 3, '12345655', 'connie.michaels@beispielfirma.de', '1986-01-01'), +(7, 'Osser', 'Bernd', 'Usambaraweg 28', '50732', 'Köln', '2200.00', 3, '27913020', 'b.osser@beispielfirma.de', '1986-01-01'), +(8, 'Koppes', 'Karin', 'Kopenhagener Straße 34', '53177', 'Bonn', '2400.00', 4, '98766754', 'karin.koppes@beispielfirma.de', '1986-01-01'), +(9, 'Wilding', 'Alexander', 'Sedanstraße 172', '53229', 'Bonn', '2300.00', 4, '28652947', 'alex.wilding@beispielfirma.de', '1986-01-01'), +(10, 'Schmidt', 'Peter', 'Konrad-Adenauer-Straße 49', '50997', 'Köln', '2500.00', 5, '68371020', 'p.schmidt@beispielfirma.de', '1986-01-01'), +(11, 'Müller', 'Ole', 'Lutherstraße 4', '50823', 'Köln', '2600.00', 5, '682037741', 'o.mueller@beispielfirma.de', '1986-01-01'), +(12, 'Meier', 'Wilhelm', 'Römerstraße 53', '53229', 'Bonn', '2400.00', 5, '91821573', 'willi.meier@beispielfirma.de', '1986-01-01'), +(13, 'Schiff', 'Martin', 'Truchseßstraße 74', '53127', 'Bonn', '2500.00', 5, '65744583', 'martin.schiff@beispielfirma.de', '1986-01-01'), +(14, 'Lehne', 'Luise', 'Lyngsbergstraße 93', '53113', 'Bonn', '2000.00', 6, '12341756', 'luise.lehne@beispielfirma.de', '1986-01-01'), +(15, 'Remsen', 'Kevin', 'Nonnenstrombergstraße 22', '50672', 'Köln', '1800.00', 6, '94128882', 'kevin.remsen@beispielfirma.de', '1986-01-01'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `mwstsatz` +-- + +CREATE TABLE `mwstsatz` ( + `MWSTNR` int(11) NOT NULL, + `PROZENT` decimal(4,2) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `mwstsatz` +-- + +INSERT INTO `mwstsatz` (`MWSTNR`, `PROZENT`) VALUES +(1, '7.00'), +(2, '19.00'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `posten` +-- + +CREATE TABLE `posten` ( + `BESTELLNR` int(11) NOT NULL, + `ARTIKELNR` int(11) NOT NULL, + `BESTELLMENGE` int(11) DEFAULT NULL, + `LIEFERMENGE` int(11) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Daten für Tabelle `posten` +-- + +INSERT INTO `posten` (`BESTELLNR`, `ARTIKELNR`, `BESTELLMENGE`, `LIEFERMENGE`) VALUES +(1, 1, 1, 1), +(1, 2, 1, 1), +(2, 34, 2, 2), +(3, 11, 1, 1), +(3, 20, 1, 1), +(4, 45, 1, 1), +(5, 19, 1, 1), +(6, 46, 2, 2), +(7, 8, 1, 1), +(7, 37, 1, 1), +(8, 12, 1, 1), +(9, 39, 1, 1), +(10, 25, 1, 1), +(10, 30, 1, 1), +(11, 20, 1, 1), +(12, 36, 1, 1), +(13, 41, 1, 1), +(13, 49, 1, 1), +(14, 6, 3, 3), +(15, 36, 1, 1), +(16, 21, 4, 4), +(17, 34, 1, 1), +(18, 34, 1, 1), +(19, 41, 1, 1), +(20, 17, 1, 1), +(21, 2, 3, 3), +(22, 19, 1, 1), +(23, 32, 1, 1), +(24, 14, 2, 2), +(25, 28, 1, 1), +(26, 8, 1, 1), +(26, 21, 2, 2), +(27, 36, 1, 1), +(28, 40, 1, 1), +(29, 4, 1, 1), +(29, 27, 1, 1), +(29, 43, 1, 1), +(30, 28, 3, 3), +(31, 15, 1, 1), +(32, 18, 1, 1), +(33, 38, 2, 2), +(34, 4, 1, 1), +(35, 25, 1, 1), +(36, 6, 2, 2), +(36, 32, 1, 1), +(37, 19, 1, 1), +(38, 42, 1, 1), +(39, 3, 1, 1), +(39, 26, 1, 1), +(40, 17, 1, 1), +(41, 23, 1, 1), +(41, 45, 1, 1), +(42, 27, 2, 2), +(43, 18, 1, 1), +(44, 24, 1, 1), +(45, 7, 1, 1), +(46, 38, 1, 1), +(47, 21, 1, 1), +(49, 32, 1, 1), +(50, 16, 2, 2), +(51, 13, 1, 1), +(51, 47, 1, 1), +(52, 28, 3, 3), +(53, 34, 1, 1), +(54, 41, 1, 1), +(55, 14, 2, 2), +(56, 29, 1, 1), +(57, 1, 1, 1), +(58, 18, 1, 1), +(59, 32, 2, 2), +(60, 24, 1, 1), +(61, 30, 1, 1), +(61, 45, 1, 1), +(62, 11, 2, 2), +(62, 38, 1, 1), +(63, 4, 1, 1), +(64, 33, 1, 1), +(64, 42, 1, 1), +(65, 10, 1, 1), +(65, 44, 1, 1), +(66, 26, 1, 1), +(66, 36, 1, 1), +(66, 49, 2, 2), +(67, 27, 1, 1), +(67, 33, 1, 1), +(68, 13, 1, 1), +(69, 7, 3, 3), +(70, 18, 1, 1), +(70, 22, 1, 1), +(70, 50, 1, 1), +(71, 6, 1, 1), +(71, 28, 1, 1), +(72, 1, 2, 2), +(72, 6, 4, 4), +(72, 10, 1, 1), +(72, 11, 1, 1), +(72, 12, 2, 2), +(73, 4, 1, 1), +(73, 43, 1, 1), +(74, 3, 1, 1), +(74, 4, 1, 1), +(74, 7, 1, 1), +(74, 9, 1, 1), +(74, 11, 1, 1), +(74, 14, 1, 1), +(74, 17, 1, 1), +(74, 20, 1, 1), +(74, 22, 1, 1), +(74, 26, 1, 1), +(74, 29, 1, 1), +(74, 34, 1, 1), +(74, 37, 1, 1), +(74, 38, 1, 1), +(74, 41, 1, 1), +(74, 42, 1, 1), +(74, 43, 1, 1), +(74, 48, 1, 1), +(74, 50, 1, 1), +(75, 5, 1, 1), +(75, 8, 1, 1), +(75, 13, 1, 1), +(75, 23, 1, 1), +(75, 26, 1, 1), +(75, 33, 1, 1), +(75, 39, 1, 1), +(75, 42, 1, 1), +(75, 49, 1, 1), +(76, 3, 3, 3), +(76, 12, 1, 1), +(76, 24, 1, 1), +(76, 32, 1, 1), +(76, 45, 2, 2), +(77, 46, 10, 10), +(77, 47, 10, 10), +(77, 48, 10, 10), +(77, 49, 10, 10), +(77, 50, 10, 10), +(78, 9, 1, 1), +(78, 16, 1, 1), +(78, 22, 1, 1), +(78, 36, 1, 1), +(78, 43, 1, 1), +(79, 34, 1, 1), +(79, 41, 1, 1); + +-- +-- Indizes der exportierten Tabellen +-- + +-- +-- Indizes für die Tabelle `abteilung` +-- +ALTER TABLE `abteilung` + ADD PRIMARY KEY (`ABTEILUNGSNR`); + +-- +-- Indizes für die Tabelle `artikel` +-- +ALTER TABLE `artikel` + ADD PRIMARY KEY (`ARTIKELNR`), + ADD KEY `HERSTELLER` (`HERSTELLER`), + ADD KEY `MWST` (`MWST`), + ADD KEY `KATEGORIE` (`KATEGORIE`); + +-- +-- Indizes für die Tabelle `bestellung` +-- +ALTER TABLE `bestellung` + ADD PRIMARY KEY (`BESTELLNR`), + ADD KEY `KUNDENNR` (`KUNDENNR`); + +-- +-- Indizes für die Tabelle `hersteller` +-- +ALTER TABLE `hersteller` + ADD PRIMARY KEY (`HERSTELLERNR`); + +-- +-- Indizes für die Tabelle `jobticket` +-- +ALTER TABLE `jobticket` + ADD PRIMARY KEY (`ID`), + ADD KEY `MITARBEITERNR` (`MITARBEITERNR`), + ADD KEY `BESTELLNR` (`BESTELLNR`); + +-- +-- Indizes für die Tabelle `kategorie` +-- +ALTER TABLE `kategorie` + ADD PRIMARY KEY (`KATEGORIENR`); + +-- +-- Indizes für die Tabelle `kunde` +-- +ALTER TABLE `kunde` + ADD PRIMARY KEY (`KUNDENNR`); + +-- +-- Indizes für die Tabelle `mitarbeiter` +-- +ALTER TABLE `mitarbeiter` + ADD PRIMARY KEY (`MITARBEITERNR`), + ADD KEY `ABTEILUNG` (`ABTEILUNG`); + +-- +-- Indizes für die Tabelle `mwstsatz` +-- +ALTER TABLE `mwstsatz` + ADD PRIMARY KEY (`MWSTNR`); + +-- +-- Indizes für die Tabelle `posten` +-- +ALTER TABLE `posten` + ADD PRIMARY KEY (`BESTELLNR`,`ARTIKELNR`), + ADD KEY `ARTIKELNR` (`ARTIKELNR`); + +-- +-- Constraints der exportierten Tabellen +-- + +-- +-- Constraints der Tabelle `artikel` +-- +ALTER TABLE `artikel` + ADD CONSTRAINT `artikel_ibfk_1` FOREIGN KEY (`HERSTELLER`) REFERENCES `hersteller` (`herstellernr`), + ADD CONSTRAINT `artikel_ibfk_2` FOREIGN KEY (`MWST`) REFERENCES `mwstsatz` (`mwstnr`), + ADD CONSTRAINT `artikel_ibfk_3` FOREIGN KEY (`KATEGORIE`) REFERENCES `kategorie` (`kategorienr`); + +-- +-- Constraints der Tabelle `bestellung` +-- +ALTER TABLE `bestellung` + ADD CONSTRAINT `bestellung_ibfk_1` FOREIGN KEY (`KUNDENNR`) REFERENCES `kunde` (`kundennr`); + +-- +-- Constraints der Tabelle `jobticket` +-- +ALTER TABLE `jobticket` + ADD CONSTRAINT `jobticket_ibfk_1` FOREIGN KEY (`MITARBEITERNR`) REFERENCES `mitarbeiter` (`mitarbeiternr`), + ADD CONSTRAINT `jobticket_ibfk_2` FOREIGN KEY (`BESTELLNR`) REFERENCES `bestellung` (`BESTELLNR`); + +-- +-- Constraints der Tabelle `mitarbeiter` +-- +ALTER TABLE `mitarbeiter` + ADD CONSTRAINT `mitarbeiter_ibfk_1` FOREIGN KEY (`ABTEILUNG`) REFERENCES `abteilung` (`ABTEILUNGSNR`); + +-- +-- Constraints der Tabelle `posten` +-- +ALTER TABLE `posten` + ADD CONSTRAINT `posten_ibfk_1` FOREIGN KEY (`ARTIKELNR`) REFERENCES `artikel` (`ARTIKELNR`), + ADD CONSTRAINT `posten_ibfk_2` FOREIGN KEY (`BESTELLNR`) REFERENCES `bestellung` (`BESTELLNR`); +COMMIT; + +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;