This is my first day of SQL so this question might be a little dumb. I have a student table wich I filled with students, now every student should have a table with the following columns score, max_score, grade_name etc.
Is it convention to dynamically add tables for every student I add or is there a better way?
Thanks for any insights!
Incase you need, here is my code I've written:
DROP DATABASE school_db;
CREATE DATABASE school_db;
USE school_db;
CREATE TABLE school_table (
id int UNIQUE AUTO_INCREMENT,
school_name VARCHAR(255) UNIQUE,
address VARCHAR(255) UNIQUE,
is_catholic bool,
PRIMARY KEY (id)
);
CREATE TABLE teacher_table (
id int UNIQUE AUTO_INCREMENT,
teacher_name VARCHAR(255),
PRIMARY KEY (id)
);
CREATE TABLE class_table (
id int UNIQUE AUTO_INCREMENT,
teacher_id int,
school_id int,
PRIMARY KEY (id),
FOREIGN KEY (school_id) REFERENCES school_table(id),
FOREIGN KEY (teacher_id) REFERENCES teacher_table(id)
);
CREATE TABLE student_table (
id int UNIQUE AUTO_INCREMENT,
class_id int,
home_address VARCHAR(255),
age int,
PRIMARY KEY (id),
FOREIGN KEY (class_id) REFERENCES class_table(id)
);
Be First to Comment