USE MASTER;
Go

DROP DATABASE  IF EXISTS WYPOZYCZALNIA_AUT;
GO

CREATE DATABASE WYPOZYCZALNIA_AUT;
GO

USE WYPOZYCZALNIA_AUT;
GO

CREATE TABLE wypozyczenia
(
  id int PRIMARY KEY,
  oferty_id int,
  pracownik_id int,
  miejsce_id int,
  Data_wypozyczenia DATETIME,
  Data_oddania DATETIME
);

CREATE TABLE oferty
(
  id int PRIMARY KEY,
  osoby_id int,
  status_oferty varchar(30)
  CONSTRAINT chk_status CHECK (status_oferty IN ('Aktualna','Zajeta','Zarezerwowana')),
  auta_numer_rejestracyjny varchar(255)
);

CREATE TABLE auta
(
  marka varchar(255),
  model varchar(255),
  przebieg int,
  numer_rejestracyjny varchar(255) PRIMARY KEY,
  kolor varchar(255)
);

CREATE TABLE osoby
(
  id int PRIMARY KEY,
  imie varchar(255),
  nazwisko varchar(255) UNIQUE,
  plec varchar(255),
  data_urodzin varchar(255)
);

CREATE TABLE miejsca
(
  id int PRIMARY KEY,
  wojewodztwo varchar(255),
  miasto varchar(255),
  dzielnica varchar(255)
);

CREATE TABLE pracownik
(
  id int PRIMARY KEY,
  imie varchar(255),
  nazwisko varchar(255) UNIQUE,
  plec varchar(255),
  data_urodzin varchar(255),
  staz int
);

ALTER TABLE wypozyczenia ADD FOREIGN KEY (oferty_id) REFERENCES oferty (id);

ALTER TABLE wypozyczenia ADD FOREIGN KEY (pracownik_id) REFERENCES pracownik (id);

ALTER TABLE wypozyczenia ADD FOREIGN KEY (miejsce_id) REFERENCES miejsca (id);

ALTER TABLE oferty ADD FOREIGN KEY (osoby_id) REFERENCES osoby (id);

ALTER TABLE oferty ADD FOREIGN KEY (auta_numer_rejestracyjny) REFERENCES auta (numer_rejestracyjny);
