53 lines
2.5 KiB
SQL
53 lines
2.5 KiB
SQL
SELECT 'CREATE DATABASE main'
|
|
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'main')\gexec
|
|
CREATE TABLE Vehicles (
|
|
id bigint NOT NULL GENERATED ALWAYS AS IDENTITY ( INCREMENT 1 START 1 MINVALUE 1 MAXVALUE 9223372036854775807 CACHE 1 ),
|
|
Registration text COLLATE pg_catalog."default",
|
|
Make text COLLATE pg_catalog."default",
|
|
Model text COLLATE pg_catalog."default",
|
|
Colour text COLLATE pg_catalog."default",
|
|
Year smallint,
|
|
CONSTRAINT Vehicles_pkey PRIMARY KEY (id)
|
|
);
|
|
|
|
CREATE TABLE ServiceLog (
|
|
id bigint NOT NULL GENERATED ALWAYS AS IDENTITY ( INCREMENT 1 START 1 MINVALUE 1 MAXVALUE 9223372036854775807 CACHE 1 ),
|
|
Description text COLLATE pg_catalog."default",
|
|
VehicleId bigint,
|
|
ServiceDate timestamp without time zone,
|
|
Category text COLLATE pg_catalog."default",
|
|
Mileage bigint,
|
|
CONSTRAINT ServiceLog_pkey PRIMARY KEY (id),
|
|
CONSTRAINT vehicle_foreign_key FOREIGN KEY (VehicleId)
|
|
REFERENCES Vehicles (id) MATCH SIMPLE
|
|
ON UPDATE NO ACTION
|
|
ON DELETE NO ACTION
|
|
);
|
|
|
|
INSERT INTO Vehicles (Registration, Make, Model, Colour, Year)
|
|
VALUES ('FAZ 9837','Volkswagen','Polo','White',2002);
|
|
INSERT INTO Vehicles (Registration, Make, Model, Colour, Year)
|
|
VALUES ('JHI 8827','BMW','M3','Black',2013);
|
|
INSERT INTO Vehicles (Registration, Make, Model, Colour, Year)
|
|
VALUES ('D903PI','Volvo','XC40','Grey',2014);
|
|
INSERT INTO Vehicles (Registration, Make, Model, Colour, Year)
|
|
VALUES ('YFI002','Volkswagen','Golf','Dark Blue',2018);
|
|
INSERT INTO Vehicles (Registration, Make, Model, Colour, Year)
|
|
VALUES ('HGT5677','Skoda','Octavia','Graphite',2009);
|
|
INSERT INTO Vehicles (Registration, Make, Model, Colour, Year)
|
|
VALUES ('PPF9276','Skoda','Octavia','Graphite',2021);
|
|
INSERT INTO Vehicles (Registration, Make, Model, Colour, Year)
|
|
VALUES ('J893FT','Toyota','Corolla','Red',2015);
|
|
INSERT INTO Vehicles (Registration, Make, Model, Colour, Year)
|
|
VALUES ('MJK776','Honda','HR-V','Silver',2015);
|
|
|
|
|
|
INSERT INTO ServiceLog (Description, VehicleId, ServiceDate, Category, Mileage)
|
|
VALUES ('Change front brakes', 1, '2021-05-04', 'Brakes', 20667);
|
|
INSERT INTO ServiceLog (Description, VehicleId, ServiceDate, Category, Mileage)
|
|
VALUES ('Tyres - full set', 1, '2021-05-04', 'Brakes', 20667);
|
|
INSERT INTO ServiceLog (Description, VehicleId, ServiceDate, Category, Mileage)
|
|
VALUES ('Engine tune up', 2, '2021-07-14', 'Brakes', 50889);
|
|
INSERT INTO ServiceLog (Description, VehicleId, ServiceDate, Category, Mileage)
|
|
VALUES ('Replace transmission', 3, '2021-09-26', 'Transmission', 98002);
|