PRAGMA foreign_keys = ON;

PRAGMA writable_schema = 1;
DELETE FROM sqlite_master WHERE type IN ("table", "index", "trigger");
PRAGMA writable_schema = 0;
VACUUM;

CREATE TABLE "drivers" (
"driverId" INT UNIQUE,
"forename" TEXT,
"surname" TEXT,
"nationality" TEXT,
PRIMARY KEY ("driverId")
);

CREATE TABLE "races" (
"raceId" INT UNIQUE,
"year" INT,
"name" TEXT,
PRIMARY KEY ("raceId")
);

CREATE TABLE "results" (
"resultId" INT,
"raceId" INT,
"driverId" INT,
"constructorId" INT,
"position" INT,
"points" FLOAT,
"time" TEXT,
PRIMARY KEY ("resultId"),
FOREIGN KEY ("raceId") REFERENCES "races"("raceId"),
FOREIGN KEY ("driverId") REFERENCES "drivers"("driverId")
);



INSERT INTO "drivers" VALUES ("1", "Lewis", "Hamilton", "British");
INSERT INTO "drivers" VALUES ("2", "Robert", "Kubica", "Polish");
INSERT INTO "drivers" VALUES ("3", "Felipe", "Massa", "Brazilian");
INSERT INTO "drivers" VALUES ("4", "Kimi", "Raikkonen", "Finnish");
INSERT INTO "drivers" VALUES ("5", "Fernando", "Alonso", "Spanish");
INSERT INTO "races" VALUES ("101", "2008", "Canadian Grand Prix");
INSERT INTO "races" VALUES ("102", "2008", "Monaco Grand Prix");
INSERT INTO "races" VALUES ("103", "2008", "British Grand Prix");
INSERT INTO "results" VALUES ("1001", "101", "1", "44", "1", "10.0", "1:30:01.672");
INSERT INTO "results" VALUES ("1002", "101", "2", "6", "2", "8.0", "NULL");
INSERT INTO "results" VALUES ("1003", "101", "3", "7", "3", "6.0", "NULL");
INSERT INTO "results" VALUES ("1004", "101", "4", "8", "4", "5.0", "NULL");
INSERT INTO "results" VALUES ("1005", "101", "5", "9", "5", "4.0", "NULL");
INSERT INTO "results" VALUES ("1006", "102", "3", "7", "1", "10.0", "1:35:12.345");
INSERT INTO "results" VALUES ("1007", "102", "5", "9", "2", "8.0", "NULL");
INSERT INTO "results" VALUES ("1008", "103", "4", "8", "1", "10.0", "1:28:45.789");
INSERT INTO "results" VALUES ("1009", "103", "1", "44", "2", "8.0", "NULL");