Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
computer:tutorials:sql:daten [2011/03/02 17:47] christian [Kundentabelle] |
computer:tutorials:sql:daten [2013/05/13 10:13] (aktuell) christian [SQL-Dump] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
======Beschreibung====== | ======Beschreibung====== | ||
- | Die Firma **Failution Consulting** verwaltet ihre Kunden, Artikel und Bestellungen in einem relationalen Datenbanksystem. | + | Die fiktive Firma **Failution Consulting** verwaltet ihre Kunden, Artikel und Bestellungen in einem relationalen Datenbanksystem. |
- | + | ||
======Kundentabelle====== | ======Kundentabelle====== | ||
^KUNDEN^^^^^^^^ | ^KUNDEN^^^^^^^^ | ||
- | ^KND_Nr^KND_Vorname^KND_Nachname^KND_Firma^KND_Strasse^KND_PLZ^KND_Ort^KND_Notiz^ | + | ^KND_Nr^KND_Vorname^KND_Nachname^KND_Firma^KND_Strasse^KND_HausNr^KND_Ort^KND_Notiz^ |
- | |1|Max|Mustermann|Mustermann Consulting|Musterstrasse 1|12345|Musterstadt| | | + | |1|Max|Mustermann|Mustermann Consulting|Musterstrasse|1|1| | |
- | |2|Theodor|Tester|Test-Solutions AG|Testweg 16|55353|Testort|Offene Rechnung Nr.3| | + | |2|Theodor|Tester|Test-Solutions AG|Testweg|16|2|Offene Rechnung Nr.3| |
- | |3|Bernhard|Beispiel|Beispielfirma|Beispielgasse 9|76425|Beispielkaff| | | + | |3|Bernhard|Beispiel|Beispielfirma|Beispielgasse|9|3| | |
- | |4|Paul|Pause|Pause development KG|Pausengasse 65|55353|Testort| | | + | |4|Paul|Pause|Pause development KG|Pausengasse|65|2| | |
+ | |||
+ | ======Ort-Tabelle====== | ||
+ | ^ORTE^^^ | ||
+ | ^ORT_Nr^ORT_PLZ^ORT_Name^ | ||
+ | |1|12345|Musterstadt| | ||
+ | |2|55353|Testort| | ||
+ | |3|76425|Beispielkaff| | ||
======Artikeltabelle====== | ======Artikeltabelle====== | ||
^ARTIKEL^^^^^ | ^ARTIKEL^^^^^ | ||
^ART_Nr^ART_Bezeichnung^ART_Details^ART_Auslauf^ART_StckPreis^ | ^ART_Nr^ART_Bezeichnung^ART_Details^ART_Auslauf^ART_StckPreis^ | ||
|1|Thin-Client BAER|1.6 Ghz,Sound,VGA,USB| |199.99| | |1|Thin-Client BAER|1.6 Ghz,Sound,VGA,USB| |199.99| | ||
- | |2|Thin-Client NP|1.0 Ghz,Sound,VGA+DVI,USB|ja|179.99| | + | |2|Thin-Client NP|1.0 Ghz,Sound,VGA+DVI,USB|1|179.99| |
|3|Thin-Client MOON|1.2 Ghz,Sound,VGA+DVI+DP,USB| |219.99| | |3|Thin-Client MOON|1.2 Ghz,Sound,VGA+DVI+DP,USB| |219.99| | ||
|4|Server CONTRALION|3.4 Ghz,DC,SCSI,RAID|1|1299.99| | |4|Server CONTRALION|3.4 Ghz,DC,SCSI,RAID|1|1299.99| | ||
Zeile 21: | Zeile 27: | ||
|6|Server STORAGE|2.0 Ghz,SATA,RAID,BACKPLANE| |2499.99| | |6|Server STORAGE|2.0 Ghz,SATA,RAID,BACKPLANE| |2499.99| | ||
|7|Workstation CONTENANCE|3.0 Ghz,SAS,Sound,DVI+DP,USB3| |1399.99| | |7|Workstation CONTENANCE|3.0 Ghz,SAS,Sound,DVI+DP,USB3| |1399.99| | ||
- | |8|Workstation MORTIMER|2.6 Ghz,SATA,Sound,VGA,USB|ja|399.99| | + | |8|Workstation MORTIMER|2.6 Ghz,SATA,Sound,VGA,USB|1|399.99| |
======Bestellungstabelle====== | ======Bestellungstabelle====== | ||
^BESTELLUNGEN^^^^ | ^BESTELLUNGEN^^^^ | ||
Zeile 27: | Zeile 34: | ||
|1|1|10.10.2010|1| | |1|1|10.10.2010|1| | ||
|2|3|14.02.2011|1| | |2|3|14.02.2011|1| | ||
- | |3|2|15.02.2011| | | + | |3|2|15.02.2011|0| |
|4|1|28.02.2011|1| | |4|1|28.02.2011|1| | ||
|5|1|01.03.2011|1| | |5|1|01.03.2011|1| | ||
- | + | |6|3|02.03.2011|1| | |
- | + | ||
- | + | ||
======Bestellungspositionen-Tabelle====== | ======Bestellungspositionen-Tabelle====== | ||
Zeile 46: | Zeile 50: | ||
|7|4|1|15|195.99| | |7|4|1|15|195.99| | ||
|8|5|1|50|199.99| | |8|5|1|50|199.99| | ||
- | + | |9|6|6|2|2499.99| | |
+ | |10|6|7|4|1399.99| | ||
<note>Die Tabelle enthält eine Spalte **BPOS_Einzelpreis**, die den damaligen Einzelpreis definiert - würde sie nicht existieren würden Preisänderungen alte Rechnungsbeträge verfälschen.</note> | <note>Die Tabelle enthält eine Spalte **BPOS_Einzelpreis**, die den damaligen Einzelpreis definiert - würde sie nicht existieren würden Preisänderungen alte Rechnungsbeträge verfälschen.</note> | ||
- | |||
- | |||
======SQL-Dump====== | ======SQL-Dump====== | ||
Zeile 58: | Zeile 60: | ||
USE FAILUTION; | USE FAILUTION; | ||
- | CREATE TABLE KUNDEN (KND_Nr int PRIMARY KEY AUTO_INCREMENT, KND_Vorname char(50) NOT NULL, | + | CREATE TABLE KUNDEN( |
- | KND_Nachname char(50) NOT NULL, KND_Firma char(50) NOT NULL, KND_Strasse char(50) NOT NULL, | + | KND_Nr int PRIMARY KEY AUTO_INCREMENT, |
- | KND_PLZ char(5) NOT NULL, KND_Ort char(30) NOT NULL, KND_Notiz char(50)); | + | KND_Vorname varchar(50) NOT NULL, |
- | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_PLZ, KND_Ort) VALUES | + | KND_Nachname varchar(50) NOT NULL, |
- | ('Max', 'Mustermann', 'Mustermann Consulting', 'Musterstrasse 1', '12345', 'Musterstadt'); | + | KND_Firma varchar(50) NOT NULL, |
- | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_PLZ, KND_Ort, KND_Notiz) | + | KND_Strasse varchar(50) NOT NULL, |
- | VALUES ('Theodor', 'Tester', 'Test-Soultions AG', 'Testweg 16', '55353', 'Testort', 'Offene | + | KND_HausNr varchar(5) NOT NULL, |
- | Rechnung Nr.3'); | + | KND_Ort int NOT NULL, |
- | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_PLZ, KND_Ort) VALUES | + | KND_Notiz varchar(50) |
- | ('Bernhard', 'Beispiel', 'Beispielfirma', 'Beispielgasse 9', '76425', 'Beispielkaff'); | + | ); |
+ | |||
+ | INSERT INTO KUNDEN(KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_HausNr, KND_Ort) | ||
+ | VALUES('Max', 'Mustermann', 'Mustermann Consulting', 'Musterstrasse', '1', 1); | ||
+ | |||
+ | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_HausNr, KND_Ort, KND_Notiz) | ||
+ | VALUES ('Theodor', 'Tester', 'Test-Soultions AG', 'Testweg', '16', 2, 'Offene Rechnung Nr.3'); | ||
+ | |||
+ | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_HausNr, KND_Ort) | ||
+ | VALUES ('Bernhard', 'Beispiel', 'Beispielfirma', 'Beispielgasse', '9', 3); | ||
+ | |||
+ | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_HausNr, KND_Ort) | ||
+ | VALUES ('Paul', 'Pause', 'Pause development KG', 'Pausengasse', '65', 2); | ||
+ | |||
+ | |||
+ | |||
+ | CREATE TABLE ORTE( | ||
+ | ORT_Nr int PRIMARY KEY AUTO_INCREMENT, | ||
+ | ORT_PLZ char(5) NOT NULL, | ||
+ | ORT_Name varchar(50) NOT NULL | ||
+ | ); | ||
+ | |||
+ | INSERT INTO ORTE(ORT_PLZ, ORT_Name) VALUES ("12345", "Musterstadt"); | ||
+ | |||
+ | INSERT INTO ORTE(ORT_PLZ, ORT_Name) VALUES ("55353", "Testort"); | ||
+ | |||
+ | INSERT INTO ORTE(ORT_PLZ, ORT_Name) VALUES ("76425", "Beispielkaff"); | ||
+ | |||
+ | |||
+ | |||
+ | CREATE TABLE ARTIKEL( | ||
+ | ART_Nr int PRIMARY KEY AUTO_INCREMENT, | ||
+ | ART_Bezeichnung varchar(50) NOT NULL, | ||
+ | ART_Details varchar(50) NOT NULL, | ||
+ | ART_Auslauf bool NULL, | ||
+ | ART_StckPreis float NOT NULL | ||
+ | ); | ||
+ | |||
+ | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) | ||
+ | VALUES ('Thin-Client BAER', '1.6 Ghz,Sound,VGA,USB', 199.99); | ||
+ | |||
+ | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_Auslauf, ART_StckPreis) | ||
+ | VALUES ('Thin-Client NP', '1.0 Ghz,Sound,VGA+DVI,USB', 1, 179.99); | ||
+ | |||
+ | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) | ||
+ | VALUES ('Thin-Client MOON', '1.2 Ghz,Sound,VGA+DVI+DP,USB', 219.99); | ||
+ | |||
+ | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_Auslauf, ART_StckPreis) | ||
+ | VALUES ('Server CONTRALION', '3.4 Ghz,DC,SCSI,RAID', 1, 1299.99); | ||
+ | |||
+ | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) | ||
+ | VALUES ('Server POWERCORE', '3.6 Ghz,QC,SAS,RAID,HBA', 1999.99); | ||
+ | |||
+ | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) | ||
+ | VALUES ('Server STORAGE', '2.0 Ghz,SATA,RAID,BACKPLANE', 2499.99); | ||
+ | |||
+ | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) | ||
+ | VALUES ('Workstation CONTENANCE', '3.0 Ghz,SAS,Sound,DVI+DP,USB3', 1399.99); | ||
+ | |||
+ | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_Auslauf, ART_StckPreis) | ||
+ | VALUES ('Workstation MORTIMER', '2.6 Ghz,SATA,Sound,VGA,USB', 1, 399.99); | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | CREATE TABLE BESTELLUNGEN( | ||
+ | BST_Nr int PRIMARY KEY AUTO_INCREMENT, | ||
+ | KND_Nr int NOT NULL, | ||
+ | BST_Datum date NOT NULL, | ||
+ | BST_Bezahlt bool NULL | ||
+ | ); | ||
+ | |||
+ | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum, BST_Bezahlt) | ||
+ | VALUES (1, '2010.10.10', 1); | ||
+ | |||
+ | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum, BST_Bezahlt) | ||
+ | VALUES (3, '2011.02.14', 1); | ||
+ | |||
+ | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum) | ||
+ | VALUES (2, '2011.02.15'); | ||
+ | |||
+ | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum, BST_Bezahlt) | ||
+ | VALUES (1, '2011.02.28', 1); | ||
+ | |||
+ | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum, BST_Bezahlt) | ||
+ | VALUES (1, "2011.03.01", 1); | ||
+ | |||
+ | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum, BST_Bezahlt) | ||
+ | VALUES (3, "2011.03.02", 1); | ||
- | CREATE TABLE ARTIKEL (ART_Nr int PRIMARY KEY AUTO_INCREMENT, ART_Bezeichnung char(30) NOT NULL, | ||
- | ART_Details char(50) NOT NULL, ART_Auslauf bool NULL, ART_StckPreis float NOT NULL); | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) VALUES ('Thin-Client BAER', | ||
- | '1.6 Ghz,Sound,VGA,USB', 199.99); | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_Auslauf, ART_StckPreis) VALUES ( | ||
- | 'Thin-Client NP', '1.0 Ghz,Sound,VGA+DVI,USB', 1, 179.99); | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) VALUES ('Thin-Client MOON', | ||
- | '1.2 Ghz,Sound,VGA+DVI+DP,USB', 219.99); | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_Auslauf, ART_StckPreis) VALUES ( | ||
- | 'Server CONTRALION', '3.4 Ghz,DC,SCSI,RAID', 1, 1299.99); | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) VALUES ( | ||
- | 'Server POWERCORE', '3.6 Ghz,QC,SAS,RAID,HBA', 1999.99); | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) VALUES ( | ||
- | 'Server STORAGE', '2.0 Ghz,SATA,RAID,BACKPLANE', 2499.99); | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) VALUES ( | ||
- | 'Workstation CONTENANCE', '3.0 Ghz,SAS,Sound,DVI+DP,USB3', 1399.99); | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_Auslauf, ART_StckPreis) VALUES ( | ||
- | 'Workstation MORTIMER', '2.6 Ghz,SATA,Sound,VGA,USB', 1, 399.99); | ||
- | CREATE TABLE BESTELLUNGEN (BST_Nr int PRIMARY KEY AUTO_INCREMENT, KND_Nr int NOT NULL, | + | CREATE TABLE BESTELL_POS( |
- | BST_Datum date NOT NULL, BST_Bezahlt bool); | + | BPOS_Nr int PRIMARY KEY AUTO_INCREMENT, |
- | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum, BST_Bezahlt) VALUES (1, '2010.10.10', 1); | + | BST_Nr int NOT NULL, |
- | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum, BST_Bezahlt) VALUES (3, '2011.02.14', 1); | + | ART_Nr int NOT NULL, |
- | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum) VALUES (2, '2011.02.15'); | + | BPOS_Anzahl int NOT NULL, |
- | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum, BST_Bezahlt) VALUES (1, '2011.02.28', 1); | + | BPOS_Einzelpreis float NOT NULL |
- | INSERT INTO BESTELLUNGEN (KND_Nr, BST_Datum, BST_Bezahlt) VALUES (1, "2011.03.01", 1); | + | ); |
- | CREATE TABLE BESTELL_POS (BPOS_Nr int PRIMARY KEY AUTO_INCREMENT, BST_Nr int NOT NULL, | + | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) |
- | ART_Nr int NOT NULL, BPOS_Anzahl int NOT NULL, BPOS_Einzelpreis float NOT NULL); | + | VALUES (1, 1, 10, 199.99), |
- | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (1, 1, 10, 199.99); | + | (1, 2, 15, 229.99), |
- | INSERT INTO BESTELL_POS (BSt_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (1, 2, 15, 229.99); | + | (2, 2, 8, 189.99), |
- | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (2, 2, 8, 189.99); | + | (2, 3, 8, 219.99), |
- | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (2, 3, 8, 219.99); | + | (3, 1, 1, 199.99), |
- | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (3, 1, 1, 199.99); | + | (4, 2, 10, 225.99), |
- | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (4, 2, 10, 225.99); | + | (4, 1, 15, 195.99), |
- | INSERT INTO BESTELL_POS (BSt_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (4, 1, 15, 195.99); | + | (5, 1, 50, 199.99), |
- | INSERT INTO BESTELL_POS (BSt_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (5, 1, 50, 199.99); | + | (6, 6, 2, 2499.99), |
+ | (6, 7, 4, 1399.99); | ||
</code> | </code> |