โดยสำหรับ Relational Database ที่ใช้เก็บข้อมูลจะมีลักษณะตาม ER Diagram ด้านบน
Student Table
CREATE TABLE `student` (`Student_ID` VARCHAR(13) NOT NULL,
`Thai_Name` VARCHAR(200) NOT NULL,
`English_Name` VARCHAR(200) NOT NULL,
`Sex` VARCHAR(20) NOT NULL,
`Degree` VARCHAR(200) NOT NULL,
`Major` VARCHAR(200) NOT NULL,
`Student_Type` VARCHAR(200) NOT NULL,
`Program` VARCHAR(250) NOT NULL,
`Program2` VARCHAR(250) NOT NULL,
`Main_Course` VARCHAR(250) NOT NULL,
`Year_Enrolled` VARCHAR(250) NOT NULL,
`Campus` VARCHAR(250) NOT NULL,
`Account_Number` VARCHAR(20) NOT NULL,
`Program_ID` VARCHAR(50) NOT NULL,
`Student_Status` VARCHAR(20) NOT NULL,
`Year` VARCHAR(50) NOT NULL,
`ID_Card` VARCHAR(13) NOT NULL,
`Birth_Date` VARCHAR(50) NOT NULL,
`Home_Town` VARCHAR(200) NOT NULL,
`Height` VARCHAR(50) NOT NULL,
`Weight` VARCHAR(50) NOT NULL,
`Blood_Group` VARCHAR(10) NOT NULL,
`Is_the_child_of` VARCHAR(50) NOT NULL,
`From_total` VARCHAR(20) NOT NULL,
`Address` VARCHAR(250) NOT NULL,
`Address_` VARCHAR(250) NOT NULL,
`Telephone` VARCHAR(20) NOT NULL,
`Live_with` VARCHAR(50) NOT NULL,
`Expense` VARCHAR(50) NOT NULL,
`Funded_by` VARCHAR(50) NOT NULL,
PRIMARY KEY (`Student_ID`),
INDEX `FK_student_program` (`Program_ID`),
CONSTRAINT `FK_student_program` FOREIGN KEY (`Program_ID`) REFERENCES `program` (`Program_id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB;
Program Table
CREATE TABLE `program` (
`Name` VARCHAR(200) NULL DEFAULT NULL,
`Program_id` VARCHAR(50) NOT NULL,
`Faculty` VARCHAR(200) NOT NULL,
`Department` VARCHAR(200) NOT NULL,
PRIMARY KEY (`Program_id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
;
Course Table
CREATE TABLE `course` (
`Course_id` VARCHAR(50) NOT NULL,
`Credit_points` INT(11) NULL DEFAULT NULL,
`Name` VARCHAR(50) NULL DEFAULT NULL,
PRIMARY KEY (`Course_id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
;
Attemps Table
เนื่องจากตาราง Attemps นั้นมีความสัมพันธ์แบบ Many-to-many ทำให้เราต้องสร้าง Table ขึ้นมาใหม่แล้วกำหนด Foreign Key จาก Primary Key ของทั้ง 2 ตารางก็คือ Course_id จากตาราง course และ
Student_id จากตาราง student
CREATE TABLE `attemps` (
`Course_id` VARCHAR(50) NOT NULL,
`Student_id` VARCHAR(13) NOT NULL,
`Year` YEAR NOT NULL,
`Semester` INT(11) NOT NULL,
`Grade` VARCHAR(10) NOT NULL,
PRIMARY KEY (`Course_id`, `Year`, `Semester`, `Student_id`),
INDEX `FK_attemps_student` (`Student_id`),
CONSTRAINT `FK_attemps_course` FOREIGN KEY (`Course_id`) REFERENCES `course` (`Course_id`),
CONSTRAINT `FK_attemps_student` FOREIGN KEY (`Student_id`) REFERENCES `student` (`Student_ID`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
;
Contains Table
เช่นเดียวกันกับตาราง Attemps เราจะต้องสร้าง Table ขึ้นมาใหม่แล้วกำหนด Foreign Key จาก Primary Key ของทั้ง 2 ตารางก็คือ Course_id จากตาราง course และ
Program_id จากตาราง program
CREATE TABLE `contains` (
`Course_id` VARCHAR(50) NOT NULL,
`Program_id` VARCHAR(50) NOT NULL,
INDEX `FK_contains_course` (`Course_id`),
INDEX `FK_contains_program` (`Program_id`),
CONSTRAINT `FK_contains_course` FOREIGN KEY (`Course_id`) REFERENCES `course` (`Course_id`),
CONSTRAINT `FK_contains_program` FOREIGN KEY (`Program_id`) REFERENCES `program` (`Program_id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
;
ไม่มีความคิดเห็น:
แสดงความคิดเห็น