技术文摘
MySQL 实战:打造课程表与学生选课表
在数据库管理中,MySQL 是一款广泛使用的开源关系型数据库管理系统。本文将通过实战,详细讲解如何打造课程表与学生选课表,帮助您深入理解和应用 MySQL 相关知识。
创建课程表。在 MySQL 中,使用 CREATE TABLE 语句来创建表。课程表通常包含课程编号、课程名称、授课教师等字段。以如下代码为例:
CREATE TABLE courses (
course_id INT AUTO_INCREMENT PRIMARY KEY,
course_name VARCHAR(100) NOT NULL,
teacher VARCHAR(50)
);
上述代码中,course_id 作为课程的唯一标识符,使用 AUTO_INCREMENT 让其自动递增;course_name 用于存储课程名称,定义为 VARCHAR(100) 类型,即最大长度为 100 个字符;teacher 字段用来记录授课教师姓名,类型为 VARCHAR(50)。
接下来,创建学生选课表。学生选课表是连接学生和课程的桥梁,需要包含学生编号、课程编号以及选课时间等信息。代码如下:
CREATE TABLE student_courses (
student_id INT,
course_id INT,
enrollment_date DATE,
PRIMARY KEY (student_id, course_id),
FOREIGN KEY (student_id) REFERENCES students(student_id),
FOREIGN KEY (course_id) REFERENCES courses(course_id)
);
在这个表结构中,student_id 和 course_id 共同构成主键,确保每个学生对每门课程的选课记录唯一。通过 FOREIGN KEY 关键字建立外键约束,分别关联 students 表(假设已经创建好该学生表)的 student_id 和 courses 表的 course_id,以此保证数据的一致性和完整性。
当表结构创建完成后,就可以使用 INSERT INTO 语句向课程表和学生选课表中插入数据。例如,向 courses 表插入数据:
INSERT INTO courses (course_name, teacher) VALUES ('数学', '李老师');
向 student_courses 表插入数据:
INSERT INTO student_courses (student_id, course_id, enrollment_date) VALUES (1, 1, '2023-09-01');
通过以上步骤,我们成功打造了课程表与学生选课表。在实际应用中,还可以通过各种 SQL 查询语句,如 SELECT、UPDATE、DELETE 等来对这些表进行数据查询、修改和删除等操作,满足不同的业务需求。掌握这些操作,能有效提升数据库管理和开发的能力。