· 9 years ago · Dec 01, 2016, 09:06 AM
1create database if not exists bus;
2
3use bus;
4drop table if exists Tätigkeit;
5drop table if exists Bus_Reparatur;
6drop table if exists Werkstätte;
7drop table if exists Fahrtenbuchung;
8drop table if exists Kunden;
9drop table if exists Bank;
10drop table if exists Fahrer_TelNr;
11drop table if exists Fahrt;
12drop table if exists Fahrer;
13drop table if exists Bus;
14
15#Kunden (pk_Kunden_ID, vorName, nachName, plz, Ort, Straße, KundenIBAN, fk_BIC);
16#Bank (pk_BIC, Bankname)
17create table if not exists Bus(
18 pk_BusNr char(5) primary key,
19 Hersteller varchar(20),
20 AnzahlPlätze int,
21 Kennzeichen varchar(10),
22 Erstzulassung date,
23 Anschaffungspreis decimal (8,2),
24 letztewartung_am date,
25 nächsteWartung_am date );
26#Fahrer (pk_FahrerNr, vorName, nachName, plz, Ort, Straße, Gehalt)
27create table if not exists Fahrer (
28 pk_FahrerNr char(5) primary key,
29 vorName varchar(20),
30 nachName varchar(30),
31 plz char(6),
32 Ort varchar(50),
33 Straße varchar(40),
34 Gehalt decimal (7,2)
35 );
36
37#Fahrer_Telefonnummer(pk_fk_ FahrerNr, pk_Nummer)
38create table if not exists Fahrer_TelNr(
39 pk_fk_FahrerNr char(5),
40 pk_Nummer varchar(20),
41 Provider varchar(20),
42 constraint pk_Fahrer_TelNr
43 primary key(pk_fk_FahrerNr, pk_Nummer),
44 constraint fk_Fahrer_TelNr
45 foreign key(pk_fk_FahrerNr)
46 references Fahrer(pk_FahrerNr)
47 );
48
49#Fahrt (pk_FahrtenNr, fk_BusNr, fk_FahrerNr, Abfahrtszeit, Fahrziel, Fahrzeit, EinzelPreis , Fahrtdatum, gebuchte_Plätze)
50create table if not exists Fahrt(
51 pk_FahrtenNr int auto_increment primary key,
52 fk_BusNr char(5),
53 fk_FahrerNr char(5),
54 Abfahrtszeit time,
55 Fahrziel varchar(50),
56 Fahrzeit time,
57 EinzelPreis decimal(4,2),
58 Fahrtdatum date,
59 gebuchte_Plätze int,
60 constraint fk_Fahrt_BusNr
61 foreign key(fk_BusNr)
62 references Bus(pk_BusNr),
63 constraint fk_Fahrt_FahrerNr
64 foreign key(fk_FahrerNr)
65 references Fahrer(pk_FahrerNr)
66 );
67#Bank (pk_BIC, Bankname)
68create table if not exists Bank (
69 pk_BIC varchar(40) primary key,
70 Bankname varchar(50)
71 );
72#Kunden (pk_Kunden_ID, vorName, nachName, plz, Ort, Straße, KundenIBAN, fk_BIC);
73create table if not exists Kunden(
74 pk_Kunden_ID char(5) primary key,
75 vorName varchar(20),
76 nachName varchar(30),
77 plz char(6),
78 Ort varchar(50),
79 Straße varchar(40),
80 KundenIBAN varchar(40),
81 fk_BIC varchar(40),
82 constraint fk_Kunden_Bic
83 foreign key(fk_BIC)
84 references Bank(pk_BIC)
85 );
86
87
88
89#Fahrtenbuchung (pk_fk_FahrtenNr, pk_fk_Kunde, reserviert_Plätze);
90create table if not exists Fahrtenbuchung(
91 pk_fk_FahrtenNr int,
92 pk_fk_Kunde char(5),
93 reserviert_Plätze int,
94 constraint pk_Fahrtenbuchung
95 primary key(pk_fk_FahrtenNr, pk_fk_Kunde),
96 constraint fk_Fahrtenbuchung_Fahrt
97 foreign key(pk_fk_FahrtenNr)
98 references Fahrt(pk_FahrtenNr),
99 constraint fk_Fahrtenbuchung_Kunde
100 foreign key(pk_fk_Kunde)
101 references Kunden(pk_Kunden_ID)
102 );
103
104#Werkstätte (pk_WerstättenID, Firmenname, plz, Ort, Straße, Nummer, TelefonNummer)
105create table if not exists Werkstätte(
106 pk_WerstättenID char(5) primary key,
107 Firmenname varchar(30),
108 plz char(6),
109 Ort varchar(50),
110 Straße varchar(40),
111 Nummer varchar(10),
112 Telefonnummer varchar(20)
113 );
114
115#Bus_Reparatur (pk_ReparaturNr, fk_WerkstättenId fk_BusNr, Datum, Zeit, Kosten, Arbeitszeit)
116create table if not exists Bus_Reparatur(
117 pk_ReparaturNr int auto_increment primary key,
118 fk_WerkstättenId char(5),
119 fk_BusNr char(5),
120 Datum date,
121 Zeit time,
122 Kosten decimal(6,2),
123 Arbeitszeit time,
124 constraint fk_Bus_Reparatur_Werkstätte
125 foreign key(fk_WerkstättenId)
126 references Werkstätte(pk_WerstättenID),
127 constraint fk_Bus_Reparatur_Bus
128 foreign key(fk_BusNr)
129 references Bus(pk_BusNr)
130 );
131#Tätigkeit (pk_fk_ReparaturNr, pk_Beschreibung)
132create table if not exists Tätigkeit(
133 pk_fk_ReparaturNr int,
134 pk_Beschreibung varchar(100),
135 constraint pk_Tätigkeit
136 primary key(pk_fk_ReparaturNr, pk_Beschreibung),
137 constraint fk_Tätigkeit_Bus_Reparatur
138 foreign key(pk_fk_ReparaturNr)
139 references Bus_Reparatur(pk_ReparaturNr)
140 );