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 "course" (
"Course_ID" INT UNIQUE,
"Course" TEXT,
PRIMARY KEY ("Course_ID")
);

CREATE TABLE "course_arrange" (
"Course_ID" INT,
"Teacher_ID" INT,
"Grade" INT,
PRIMARY KEY ("Course_ID", "Teacher_ID", "Grade"),
FOREIGN KEY ("Teacher_ID") REFERENCES "teacher"("Teacher_ID"),
FOREIGN KEY ("Course_ID") REFERENCES "course"("Course_ID")
);

CREATE TABLE "teacher" (
"Teacher_ID" INT UNIQUE,
"Name" TEXT,
"Hometown" TEXT,
PRIMARY KEY ("Teacher_ID")
);





INSERT INTO "course" VALUES ("1", "Mathematics");
INSERT INTO "course" VALUES ("2", "Physics");
INSERT INTO "course" VALUES ("3", "Chemistry");
INSERT INTO "course" VALUES ("4", "Biology");
INSERT INTO "course" VALUES ("5", "History");
INSERT INTO "course" VALUES ("6", "Geography");
INSERT INTO "course" VALUES ("7", "Literature");
INSERT INTO "course" VALUES ("8", "Philosophy");
INSERT INTO "teacher" VALUES ("101", "Alice Johnson", "New York");
INSERT INTO "teacher" VALUES ("102", "Bob Smith", "Los Angeles");
INSERT INTO "teacher" VALUES ("103", "Carol White", "Chicago");
INSERT INTO "teacher" VALUES ("104", "David Brown", "Houston");
INSERT INTO "teacher" VALUES ("105", "Eva Green", "Phoenix");
INSERT INTO "teacher" VALUES ("106", "Frank Black", "Philadelphia");
INSERT INTO "teacher" VALUES ("107", "Grace Lee", "San Antonio");
INSERT INTO "course_arrange" VALUES ("1", "101", "10");
INSERT INTO "course_arrange" VALUES ("2", "102", "11");
INSERT INTO "course_arrange" VALUES ("3", "103", "12");
INSERT INTO "course_arrange" VALUES ("4", "104", "10");
INSERT INTO "course_arrange" VALUES ("1", "105", "11");
INSERT INTO "course_arrange" VALUES ("2", "101", "12");
INSERT INTO "course_arrange" VALUES ("3", "102", "10");
INSERT INTO "course_arrange" VALUES ("4", "103", "11");
INSERT INTO "course_arrange" VALUES ("5", "104", "12");
INSERT INTO "course_arrange" VALUES ("6", "105", "10");