Dies ist eine alte Version des Dokuments!
Firma: Failution Consulting
Datenbank
CREATE DATABASE FAILUTION;
USE FAILUTION;
Kundentabelle
KUNDEN |
KND_Nr | KND_Vorname | KND_Nachname | KND_Firma | KND_Strasse | KND_PLZ | KND_Ort | KND_Notiz |
1 | Max | Mustermann | Mustermann Consulting | Musterstrasse 1 | 12345 | Musterstadt | |
2 | Theodor | Tester | Test-Solutions AG | Testweg 16 | 55353 | Testort | Offene Rechnung Nr.3 |
3 | Bernhard | Beispiel | Beispielfirma | Beispielgasse 9 | 76425 | Beispielkaff | |
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');
Artikeltabelle
ARTIKEL |
ART_Nr | ART_Bezeichnung | ART_Details | ART_Auslauf | ART_StckPreis |
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 |
3 | Thin-Client MOON | 1.2 Ghz,Sound,VGA+DVI+DP,USB | | 219.99 |
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);
Bestellungstabelle
BESTELLUNGEN |
BST_Nr | KND_Nr | BST_Datum | BST_Bezahlt |
1 | 1 | 10.10.2010 | 1 |
2 | 3 | 14.02.2011 | 1 |
3 | 2 | 15.02.2011 | |
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');
Bestellungspositionen-Tabelle
BESTELL_POS |
BPOS_Nr | BST_Nr | ART_Nr | BPOS_Anzahl | BPOS_Einzelpreis |
1 | 1 | 1 | 10 | 199.99 |
2 | 1 | 2 | 15 | 229.99 |
3 | 2 | 2 | 8 | 189.99 |
4 | 2 | 3 | 8 | 219.99 |
5 | 3 | 1 | 1 | 199.99 |
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.
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, 2, 15, 229.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 (3, 1, 1, 199.99);