create table buecher(buch_nr char(4), titel char(30), autor char(30)); create table kunden(kunden_nr char(4), name char(30), ort char(30)); create table verleih(verleih_nr int, kunden_nr char(4), buch_nr char(4), rueckgabe char(8)); -- Blatt 4, Aufgabe (a) create table verleih(verleih_nr int, kunden_nr char(4), buch_nr char(4), rueckgabe char(8), check ( verleih_nr > 0)); -- Test insert into buecher values ('b042', 'The SQL Standard', 'C.J.Date'); insert into kunden values ('k123', 'Klaus Mueller', 'MUENCHEN'); insert into verleih values (-1, 'k123', 'b042', '03.02.99'); -- Blatt 4, Aufgabe (b) create table kunden (kunden_nr char(4), name char(30), ort char(30), check ( ort in ('MUENCHEN', 'AUGSBURG'))); -- Blatt 4, Aufgabe (c) create table buecher(buch_nr char(4) primary key, titel char(30), autor char(30)); create table kunden (kunden_nr char(4) primary key, name char(30), ort char(30), check ( ort in ('MUENCHEN', 'AUGSBURG'))); -- Test insert into buecher values ('b042', 'An Introduction to Database Systems', 'C.J.Date'); -- Blatt 4, Aufgabe (d) -- Abh�ngig von Bedingungen, -- m�glich: {verleih_nr}, {kunden_nr, buch_nr, rueckgabe} oder -- {verleih_nr}, {kunden_nr, buch_nr} -- Blatt 4, Aufgabe (e) create table verleih(verleih_nr int, kunden_nr char(4), buch_nr char(4), rueckgabe char(8), primary key (kunden_nr, buch_nr), check ( verleih_nr > 0)); -- Blatt 4, Aufgabe (f) create table verleih(verleih_nr int primary key, kunden_nr char(4), buch_nr char(4), rueckgabe char(8), unique (kunden_nr, buch_nr), check ( verleih_nr > 0)); -- alternativ create table verleih(verleih_nr int, kunden_nr char(4), buch_nr char(4), rueckgabe char(8), primary key (verleih_nr), unique (kunden_nr, buch_nr), check ( verleih_nr > 0)); -- Blatt 4, Aufgabe (g) -- kunden_nr, buch_nr -- Blatt 4, Aufgabe (h) create table verleih(verleih_nr int primary key, kunden_nr char(4), buch_nr char(4), rueckgabe char(8), unique (kunden_nr, buch_nr), foreign (key kunden_nr) references kunden (kunden_nr), foreign key (buch_nr) references buecher (buch_nr), check ( verleih_nr > 0));