-- Tabelle: Autor
CREATE TABLE IF NOT EXISTS Autor (
  Autor_ID INTEGER PRIMARY KEY AUTOINCREMENT,
  Vorname VARCHAR(50),
  Nachname VARCHAR(50)
);

-- Tabelle: Buch
CREATE TABLE IF NOT EXISTS Buch (
  Buch_ID INTEGER PRIMARY KEY AUTOINCREMENT,
  ISBN VARCHAR(20) UNIQUE,
  Titel VARCHAR(100)
);

-- Tabelle: Kunde
CREATE TABLE IF NOT EXISTS Kunde (
  Kundennummer INTEGER PRIMARY KEY AUTOINCREMENT,
  Vorname VARCHAR(50),
  Nachname VARCHAR(50)
);

-- Tabelle: Buch_Autor
CREATE TABLE IF NOT EXISTS Buch_Autor (
  fk_Buch_ID INTEGER NOT NULL,
  fk_Autor_ID INTEGER NOT NULL,
  PRIMARY KEY (fk_Buch_ID, fk_Autor_ID),
  FOREIGN KEY (fk_Buch_ID) REFERENCES Buch (Buch_ID),
  FOREIGN KEY (fk_Autor_ID) REFERENCES Autor (Autor_ID)
);

-- Tabelle: Buch_Kunde
CREATE TABLE IF NOT EXISTS Buch_Kunde (
  fk_Buch_ID INTEGER NOT NULL,
  fk_Kunde_ID INTEGER NOT NULL,
  Startdatum DATE,
  Enddatum DATE,
  PRIMARY KEY (fk_Buch_ID, fk_Kunde_ID, Startdatum),
  FOREIGN KEY (fk_Buch_ID) REFERENCES Buch (Buch_ID),
  FOREIGN KEY (fk_Kunde_ID) REFERENCES Kunde (Kundennummer)
);
