-- SQL-skript for eksamen Database 1, desember 2024.
-- Campus: Bø + Drammen + Gol + nett


-- Forutsetter at du kjører skriptet i en tom database.
-- På lokal maskin kan du eventuelt lage en database slik:
-- DROP DATABASE IF EXISTS eksamen;
-- CREATE DATABASE IF NOT EXISTS eksamen;
-- USE eksamen;


-- Sletter tabeller
DROP TABLE IF EXISTS Avtale;
DROP TABLE IF EXISTS Avtaletype;
DROP TABLE IF EXISTS Bolig;
DROP TABLE IF EXISTS Kunde;


-- Oppretter tabeller
CREATE TABLE Kunde
(
    KNr        INT,
    Fornavn    VARCHAR(100),
	Etternavn  VARCHAR(100),
    Mobil      VARCHAR(15),
	PRIMARY KEY (KNr)
);

CREATE TABLE Bolig
(
    BNr     INT,
    Adresse VARCHAR(100),
    PostNr  VARCHAR(10),
    Kvm     INT,
    AntBad  INT,
    KNr     INT,
	PRIMARY KEY (BNr),
    FOREIGN KEY (KNr) REFERENCES Kunde (KNr)
);

CREATE TABLE Avtaletype
(
    TNr         INT,
    Beskrivelse VARCHAR(255),
    KvmPris     DECIMAL(10, 2),
	PRIMARY KEY (TNr)
);

CREATE TABLE Avtale
(
    ANr        INT,
    BNr        INT,
    TNr        INT,
    Fra        DATE,
    Ukedag     VARCHAR(10),
    DagerPrMnd INT,
	PRIMARY KEY (ANr),
    FOREIGN KEY (BNr) REFERENCES Bolig (BNr),
    FOREIGN KEY (TNr) REFERENCES Avtaletype (TNr)
);


-- Setter inn data i Kunde
INSERT INTO 
    Kunde (KNr, Fornavn, Etternavn, Mobil)
VALUES 
    (1, 'Liu',   'Wang',     '56789012'),
    (2, 'Ola',   'Lie',      '12345678'),
    (3, 'Kari',  'Olsen',    '23456789'),
    (4, 'Peder', 'Aas',      '34567890'),
    (5, 'Maria', 'Gonzalez', '45678901');


-- Setter inn data i Bolig
INSERT INTO
    Bolig (BNr, Adresse, PostNr, Kvm, AntBad, KNr)
VALUES
    (1, 'Storgata 1',    '0123', 102, 2, 1),
    (2, 'Lillegata 2',   '0234',  75, 1, 4),
    (3, 'Mellomveien 3', '0345', 120, 2, 3),
    (4, 'Bakgata 4',     '0456',  90, 1, 4),
    (5, 'Framveien 5',   '0567', 110, 2, 5),
    (6, 'Rundveien 6',   '0678',  85, 1, 5);

-- Setter inn data i Avtaletype
INSERT INTO
    Avtaletype (TNr, Beskrivelse, KvmPris)
VALUES
    (1, 'Storrengjøring', 50.00),
    (2, 'Lett renhold',   20.00),
    (3, 'Støvtørking',    35.00),
	(4, 'Rydding',        25.00);

-- Setter inn data i Avtale
INSERT INTO
    Avtale (ANr, BNr, TNr, Fra, Ukedag, DagerPrMnd)
VALUES
    (1, 1, 1, '2023-12-01', 'mandag',  1),
    (2, 2, 2, '2024-03-01', 'mandag',  3),
    (3, 3, 3, '2024-03-10', 'onsdag',  2),
    (4, 4, 1, '2024-08-20', 'mandag',  2),
    (5, 5, 2, '2024-08-25', 'torsdag', 1),
    (6, 6, 3, '2024-10-01', 'onsdag',  2);
