(1)在MySQLWorkbench 或命令行环境下,创建计算机专业的学生视图 s_computer_view,视图包含学生表全部字段。
(2)在MySQL Workbench或命令行环境下,查询s_computer_view中内容。(3)在MySQL Workbench或命令行环境下,创建2002年(含)后出生的女学生视图s_female_view,视图显示学生的学号(s_no)、姓名(s_name)、学生性别(s_sex)、出生日期(s_birthday)以及学生的联系方式(s_contact)。
(4)在MySQL Workbench或命令行环境下,通过视图s_female_view,查询张姓学生的信息。
(5) 在MySQL Workbench或命令行环境下,创建学生选课信息视图sc view,显示选修3学分(含)学生学号(s_no)、姓名(s_name)、课程号(c_no)、课程名(c_name)。
(6) 在 MySQL Workbench或命令行环境下,创建学生选课成绩视图 score_view,显示选修3学分(含)学生学号(s_no)、姓名(s_name)、课程号(c_no)、课程名(C_name)、总成绩(total_score)。其中,总成绩按照--平时成绩平时成绩比重+考试成绩(1-平时成绩比重)公式计算。
(7)在MySQLWorkbench或命令行环境下,创建学生成绩汇总视图 score_group_view,提供每位学生考试成绩最高的选课信息,要求显示的视图字段包括学生学号(s_no)、姓名(s_name)、课程号(c_no)、课程名(c_name)、考试成绩(total_score)。其中,总成绩按照一一平时成绩平时成绩比重+考试成绩(1-平时成绩比重)公式计算。
(8)在MySQL Workbench或命令行环境下,通过视图score_group_view,按考试成绩降序排列学生成绩汇总情况。
1.MySQL中使用MySQLWorkbench或者SQL语句修改和删除视图的方法(1)使用SQL语句,查看s_computer_view视图的结构信息和状态信息。2.使用SQL语句,查看s_female_view视图的创建信息和元信息。
3.在MySQL Workbench或命令行环境下,替换视图s_female_view,替换后的视图提供2003年(含)后出生的女学生信息,具体显示的字段包括学生的学号(s_no)、姓名(s_name)、学生性别(s_sex)、出生日期(s_birthday)。
4.在MySQLWorkbench或命令行环境下,修改视图sc_view,显示男同学选课情况,具体显示的字段包括学生学号(s_no)、姓名(s_name)、课程号(c_no)、课程名(c_name)、总成绩(total_score)。其中,总成绩按照一一平时成绩平时成绩比重+考试成绩(1-平时成绩比重)公式计算。
5.在MySQL Workbench或命令行环境下,删除视图s_female_view.
My SQL视图管理实验
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
关注让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
1. 创建计算机专业的学生视图 s_computer_viewCREATE VIEW s_computer_view AS SELECT * FROM student WHERE s_dept = '计算机';- 查询 s_computer_view 视图内容
SELECT * FROM s_computer_view;- 创建2002年(含)后出生的女学生视图 s_female_view
CREATE VIEW s_female_view AS SELECT s_no, s_name, s_sex, s_birthday, s_contact FROM student WHERE s_sex = '女' AND year(s_birthday) >= 2002;- 通过视图 s_female_view,查询张姓学生的信息
SELECT * FROM s_female_view WHERE s_name like '张%';- 创建学生选课信息视图 sc_view
CREATE VIEW sc_view AS SELECT student.s_no, student.s_name, sc.c_no, course.c_name FROM student, sc, course WHERE student.s_no = sc.s_no AND sc.c_no = course.c_no AND course.c_credit >= 3;- 创建学生选课成绩视图 score_view
CREATE VIEW score_view AS SELECT student.s_no, student.s_name, course.c_no, course.c_name, (sc.p_score*course.c_test_score_rate + sc.t_score*(1-course.c_test_score_rate)) as total_score FROM student, sc, course WHERE student.s_no = sc.s_no AND sc.c_no = course.c_no AND course.c_credit >= 3;- 创建学生成绩汇总视图 score_group_view
CREATE VIEW score_group_view AS SELECT student.s_no, student.s_name, course.c_no, course.c_name, MAX((sc.p_score*course.c_test_score_rate + sc.t_score*(1-course.c_test_score_rate))) as total_score FROM student, sc, course WHERE student.s_no = sc.s_no AND sc.c_no = course.c_no AND course.c_credit >= 3 GROUP BY student.s_no, course.c_no;- 通过视图 score_group_view,按考试成绩降序排列学生成绩汇总情况
SELECT * FROM score_group_view ORDER BY total_score DESC;- 查看视图结构和元信息 查看 s_computer_view 视图的结构信息和状态信息:
SHOW CREATE VIEW s_computer_view;查看 s_female_view 视图的创建信息和元信息:
SHOW CREATE VIEW s_female_view;- 替换视图 s_female_view
CREATE OR REPLACE VIEW s_female_view AS SELECT s_no, s_name, s_sex, s_birthday FROM student WHERE s_sex = '女' AND year(s_birthday) >= 2003;- 修改视图 sc_view
CREATE OR REPLACE VIEW sc_view AS SELECT student.s_no, student.s_name, course.c_no, course.c_name, (sc.p_score*course.c_test_score_rate + sc.t_score*(1-course.c_test_score_rate)) as total_score FROM student, sc, course WHERE student.s_no = sc.s_no AND sc.c_no = course.c_no AND course.c_credit >= 3 AND student.s_sex = '男';- 删除视图 s_female_view
DROP VIEW s_female_view;本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用