Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste Überarbeitung Beide Seiten der Revision | ||
computer:tutorials:sql:daten [2011/03/01 19:39] christian |
computer:tutorials:sql:daten [2013/05/13 09:11] christian [Bestellungstabelle] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | Firma: Failution Consulting | + | ======Beschreibung====== |
- | + | Die fiktive Firma **Failution Consulting** verwaltet ihre Kunden, Artikel und Bestellungen in einem relationalen Datenbanksystem. | |
- | + | ||
- | ======Datenbank====== | + | |
- | <code>CREATE DATABASE FAILUTION; | + | |
- | USE FAILUTION;</code> | + | |
- | + | ||
======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|2| | | ||
- | <code> | + | ======Ort-Tabelle====== |
- | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_PLZ, KND_Ort) VALUES | + | ^ORTE^^^ |
- | ('Max', 'Mustermann', 'Mustermann Consulting', 'Musterstrasse 1', '12345', 'Musterstadt'); | + | ^ORT_Nr^ORT_PLZ^ORT_Name^ |
- | </code> | + | |1|12345|Musterstadt| |
+ | |2|55353|Testort| | ||
+ | |3|76425|Beispielkaff| | ||
- | <code> | ||
- | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_PLZ, KND_Ort, KND_Notiz) | ||
- | VALUES ('Theodor', 'Tester', 'Test-Soultions AG', 'Testweg 16', '55353', 'Testort', 'Offene | ||
- | Rechnung Nr.3'); | ||
- | </code> | ||
- | |||
- | <code> | ||
- | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_PLZ, KND_Ort) VALUES | ||
- | ('Bernhard', 'Beispiel', 'Beispielfirma', 'Beispielgasse 9', '76425', 'Beispielkaff'); | ||
- | </code> | ||
======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| | ||
+ | |5|Server POWERCORE|3.6 Ghz,QC,SAS,RAID,HBA| |1999.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| | ||
+ | |8|Workstation MORTIMER|2.6 Ghz,SATA,Sound,VGA,USB|1|399.99| | ||
- | |||
- | |||
- | |||
- | <code> | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) VALUES ('Thin-Client BAER', | ||
- | '1.6 GHZ,Sound,VGA,USB', 199.99); | ||
- | </code> | ||
- | |||
- | <code> | ||
- | 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); | ||
- | </code> | ||
- | |||
- | <code> | ||
- | INSERT INTO ARTIKEL (ART_Bezeichnung, ART_Details, ART_StckPreis) VALUES ('Thin-Client MOON', | ||
- | '1.2 Ghz,Sound,VGA+DVI+DP,USB', 219.99); | ||
- | </code> | ||
======Bestellungstabelle====== | ======Bestellungstabelle====== | ||
^BESTELLUNGEN^^^^ | ^BESTELLUNGEN^^^^ | ||
Zeile 59: | 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| | ||
+ | |5|1|01.03.2011|1| | ||
+ | |6|3|02.03.2011|1| | ||
- | |||
- | |||
- | |||
- | <code> | ||
- | 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'); | ||
- | </code> | ||
======Bestellungspositionen-Tabelle====== | ======Bestellungspositionen-Tabelle====== | ||
^BESTELL_POS^^^^^ | ^BESTELL_POS^^^^^ | ||
Zeile 77: | Zeile 47: | ||
|4|2|3|8|219.99| | |4|2|3|8|219.99| | ||
|5|3|1|1|199.99| | |5|3|1|1|199.99| | ||
+ | |6|4|2|10|225.99| | ||
+ | |7|4|1|15|195.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====== | ||
+ | <code> | ||
+ | CREATE DATABASE FAILUTION; | ||
+ | USE FAILUTION; | ||
+ | CREATE TABLE KUNDEN (KND_Nr int PRIMARY KEY AUTO_INCREMENT, KND_Vorname char(50) NOT NULL, | ||
+ | KND_Nachname char(50) NOT NULL, KND_Firma char(50) NOT NULL, KND_Strasse char(50) NOT NULL, | ||
+ | KND_PLZ char(5) NOT NULL, KND_Ort char(30) NOT NULL, KND_Notiz char(50)); | ||
+ | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_PLZ, KND_Ort) VALUES | ||
+ | ('Max', 'Mustermann', 'Mustermann Consulting', 'Musterstrasse 1', '12345', 'Musterstadt'); | ||
+ | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_PLZ, KND_Ort, KND_Notiz) | ||
+ | VALUES ('Theodor', 'Tester', 'Test-Soultions AG', 'Testweg 16', '55353', 'Testort', 'Offene | ||
+ | Rechnung Nr.3'); | ||
+ | INSERT INTO KUNDEN (KND_Vorname, KND_Nachname, KND_Firma, KND_Strasse, KND_PLZ, KND_Ort) VALUES | ||
+ | ('Bernhard', 'Beispiel', 'Beispielfirma', 'Beispielgasse 9', '76425', 'Beispielkaff'); | ||
- | <code> | + | 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, | ||
+ | BST_Datum date NOT NULL, BST_Bezahlt bool); | ||
+ | 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); | ||
+ | |||
+ | CREATE TABLE BESTELL_POS (BPOS_Nr int PRIMARY KEY AUTO_INCREMENT, BST_Nr int NOT NULL, | ||
+ | ART_Nr int NOT NULL, BPOS_Anzahl int NOT NULL, BPOS_Einzelpreis float NOT NULL); | ||
INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (1, 1, 10, 199.99); | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (1, 1, 10, 199.99); | ||
INSERT INTO BESTELL_POS (BSt_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (1, 2, 15, 229.99); | INSERT INTO BESTELL_POS (BSt_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (1, 2, 15, 229.99); | ||
- | </code> | ||
- | |||
- | <code> | ||
INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (2, 2, 8, 189.99); | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (2, 2, 8, 189.99); | ||
INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (2, 3, 8, 219.99); | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (2, 3, 8, 219.99); | ||
- | </code> | ||
- | |||
- | <code> | ||
INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (3, 1, 1, 199.99); | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (3, 1, 1, 199.99); | ||
+ | INSERT INTO BESTELL_POS (BST_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (4, 2, 10, 225.99); | ||
+ | INSERT INTO BESTELL_POS (BSt_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (4, 1, 15, 195.99); | ||
+ | INSERT INTO BESTELL_POS (BSt_Nr, ART_Nr, BPOS_Anzahl, BPOS_Einzelpreis) VALUES (5, 1, 50, 199.99); | ||
</code> | </code> |