在本实践练习中,我们将探讨如何使用MySQL数据库管理系统来创建和管理一个学生信息管理系统。这个系统旨在服务于学生和教师,提供数据查询、增加、删除、修改等操作,特别是以查询功能为主。 我们需要对系统进行业务分析。系统的主要用户包括学生和教师,功能上,学生可以查询个人信息,而教师则能进行更广泛的管理操作,如添加、删除和修改学生的成绩,同时也能查询相关数据。因此,我们确定了四个主要实体:学生、教师、成绩和课程。 在构建模型阶段,我们从概念模型(ERP模型)出发,将其转化为数据模型,也就是关系模式。根据E-R图的转换规则,我们得到了以下的关系模式: 1. 学生(学号,名字,班级,年龄,性别) 2. 教师(工号,姓名,年龄,性别) 3. 成绩(编号,课程编号,分数) 4. 课程(ID,名称,教师ID) 接下来,我们利用SQL语句创建对应的表格。例如,创建学生表的语句如下: ```sql CREATE TABLE student ( stu_id INT(14) PRIMARY KEY NOT NULL AUTO_INCREMENT, name VARCHAR(255), class INT(8), age INT(8), sex VARCHAR(255) ); ``` 同样,我们创建教师、成绩和课程表,每个表都有相应的主键字段,并根据需要设置了自增属性。 然后,我们可以通过INSERT INTO语句向各个表中插入数据,例如: ```sql INSERT INTO student VALUES (1, '江工程', 0801, 17, '男'); INSERT INTO student(name, class, age, sex) VALUES ('徐生', 0701, 15, '男'); ``` 对于数据的维护,我们可以执行以下操作: 1. 查询学生所有信息:`SELECT * FROM student;` 2. 查询教师所有信息:`SELECT * FROM teacher;` 3. 查询选修了特定科目(如“XX科目”)的学生信息:`SELECT * FROM score WHERE course_name = 'XX科目';` 4. 获取特定科目(如“XX科目”)的教师信息:`SELECT * FROM teacher WHERE t_id = (SELECT t_id FROM course WHERE name = 'XX科目');` 5. 修改学生信息:`UPDATE student SET name = '修改' WHERE stu_id = 7;` 6. 删除学号为xx的学生信息:`DELETE FROM student WHERE stu_id = 'xx';` 7. 让学号为xx的学生选择xx课程:`INSERT INTO score(s_id, c_id, score) VALUES (xx, (SELECT c_id FROM course WHERE name = 'xx课程'), NULL);` 8. 查询年龄大于16岁的学生信息:`SELECT * FROM student WHERE age > 16;` 9. 修改学号为xx的学生的班级:`UPDATE student SET class = new_class WHERE stu_id = xx;` 通过以上步骤,我们构建了一个基本的学生信息管理系统,涵盖了对学生、教师、成绩和课程数据的增、删、查、改操作。在实际应用中,可能还需要添加更多的功能和优化查询性能,比如索引的建立、权限管理等,但这些构成了系统的基础。
- 粉丝: 7
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
评论0