数据库-MySQL 实战项目——学生选课系统数据库设计与实现
-- 创建学生表
CREATE TABLE `student` (
`student_id` int(11) NOT NULL AUTO_INCREMENT,
`student_name` varchar(255) NOT NULL,
`student_email` varchar(255) NOT NULL,
PRIMARY KEY (`student_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- 创建课程表
CREATE TABLE `course` (
`course_id` int(11) NOT NULL AUTO_INCREMENT,
`course_name` varchar(255) NOT NULL,
`course_description` varchar(1000) NOT NULL,
PRIMARY KEY (`course_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- 创建选课表
CREATE TABLE `enrollment` (
`enrollment_id` int(11) NOT NULL AUTO_INCREMENT,
`student_id` int(11) NOT NULL,
`course_id` int(11) NOT NULL,
`enrollment_date` datetime NOT NULL,
PRIMARY KEY (`enrollment_id`),
KEY `fk_course_id` (`course_id`),
KEY `fk_student_id` (`student_id`),
CONSTRAINT `fk_course_id` FOREIGN KEY (`course_id`) REFERENCES `course` (`course_id`),
CONSTRAINT `fk_student_id` FOREIGN KEY (`student_id`) REFERENCES `student` (`student_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
这段代码展示了如何在MySQL中创建用于存储学生、课程和选课信息的三个表:student
、course
和enrollment
。每个表都有其主键,并且enrollment
表中的student_id
和course_id
设置了外键约束,以确保数据的完整性和一致性。这是一个简单的学生选课系统数据库模型的例子,适用于教育行业或类似需要管理选课信息的场景。
评论已关闭