用mysql创建student_dissertation

时间:2022-10-29 13:59:44

一、 程序设计内容及要求

课程设计
创建student_dissertation数据库,在该数据库中创建4张数据表:t_student(学生表)、t_department(专业表)、t_dissertation(课题表)、t_s_dissertation(选题表),它们表结构设计如下:

用mysql创建student_dissertation

用mysql创建student_dissertation

2)对各表输入以下数据:

用mysql创建student_dissertation

用mysql创建student_dissertation

用mysql创建student_dissertation

操作要求:
1、 为各表设置主键
2、 查询要求得到所有专业号为1的男生的学生信息
3、 查询得到所有电子系男生的学生信息
4、 创建视图,显示学生所选课题还未通过审批的信息
5、 创建​​​存储过程​​​,通过指定专业,返回该专业所有学生的基本信息
6、 创建触发器,当某课题被删除时,选题表中相关记录也同时被删除
7、 建立数据库相关表之间的参照完整性约束,均设置为级联

二、程序实现思路

1、建立数据库
2、建立四张表格,并且给是主键的插入主键PRIMARY KEY
3、往表格里用insert…values插入多条记录

V-R图:

用mysql创建student_dissertation

三、 程序清单或正文

1.表格插入记录及为各表设置主键

用mysql创建student_dissertation

用mysql创建student_dissertation

用mysql创建student_dissertation

用mysql创建student_dissertation

用mysql创建student_dissertation

2.查询要求得到所有专业号为1的男生的学生信息

/查询要求得到所有专业号为1的男生的学生信息/

select * from t_student where departmentid = 1 and studentsex = ‘男’;

用mysql创建student_dissertation

3.查询得到所有的电子系男生的学生信息

/查询得到所有电子系男生的学生信息/

/查询得到所有电子系男生的学生信息/

select * from t_student where departmentid =

(select departmentid from t_department

where departmentname = ‘电子系’) and studentsex = ‘男’;

用mysql创建student_dissertation

4.创建视图显示学生所选课题还未通过审批的信息

/创建视图,显示学生所选课题还未通过审批的信息/

create view new_view

as select * from t_s_dissertation where state = ‘待审批’;

select * from new_view;/查看视图/

用mysql创建student_dissertation

5.创建储存过程,通过指定专业,返回该专业的所有学生的基本信息

/创建存储过程,通过指定专业,返回该专业所有学生的基本信息/

DELIMITER //

create PROCEDURE pr_getmassage(IN departmentname1 char(50))

BEGIN

select * from t_student where t_student.departmentid in

(select departmentid from t_department where departmentname=departmentname1);

END;

//

CALL pr_getmassage(‘电子系’);


Delimiter;

CALL pr_getmassage(‘电子系’);

//;

用mysql创建student_dissertation

6.创建触发器,当某课题被删除时选题表中的相关记录也同时被删除

/创建触发器,当某课题被删除时,选题表中相关记录也同时被删除/

DELIMITER //

CREATE TRIGGER tr_deltable AFTER DELETE

ON t_dissertation FOR EACH ROW

BEGIN

DELETE from t_s_dissertation where t_s_dissertation.dissertationid =old.dissertationid;

END

//

DELETE from t_dissertation where dissertationid=‘Z001’;

Delimiter;

//;

用mysql创建student_dissertation

7.建立数据库相关表之间的参照完整性约束,均设置为级联

/建立数据库相关表之间的参照完整性约束,均设置为级联/

ALTER TABLE t_student ADD FOREIGN KEY (departmentid) REFERENCES t_department(departmentid) ON DELETE CASCADE ON UPDATE CASCADE;

ALTER TABLE t_s_dissertation ADD FOREIGN KEY (studentid) REFERENCES t_student(studentid) ON DELETE CASCADE ON UPDATE CASCADE;

ALTER TABLE t_s_dissertation ADD FOREIGN KEY (dissertationid) REFERENCES t_dissertation(dissertationid) ON DELETE CASCADE ON UPDATE CASCADE;

//

用mysql创建student_dissertation


欢迎您关注我的微信公众号:学习微站(studysth)

用mysql创建student_dissertation


文章知识点与官方知识档案匹配,可进一步学习相关知识