ITPub博客

首页 > 数据库 > 国内数据库 > 关于数据库

关于数据库

国内数据库 作者:2113214720 时间:2014-12-05 19:36:42 0 删除 编辑
为了表达方便,我将科目表和成绩表稍微改了一下。
student(学生信息,包括Sno(学号),Sname(姓名),Sage(年龄),Sdept(班级)),
course(cid(科目ID),cname(科目名称)),
sc(Sno(选课学生学号),scid(学生所选科目ID),其成绩score) 
1. 创建一个学生信息视图V_STU。(含Sno,Sname,Sage,Sdept)。 
CREATE VIEW V_STU 
AS
    SELECT Sno,Sname,Sage,Sdept FROM student
GO

2. 在V_STU基础上创建一个年龄在18岁以上的学生信息视图V_STUA(含Sno,Sname,Sage,Sdept) 
CREATE VIEW V_STUA
AS
    SELECT Sno,Sname,Sage,Sdept V_STUA WHERE Sage > 18
GO

3. 创建一个有学生学号、姓名、课程名及成绩的“200608”班所有同学的视图STU_A。
CREATE VIEW STU_A
AS
    SELECT student.Sno,student.Sname,course.cname,sc.score FROM student 
 JOIN sc ON(student.Sno=sc.Sno) 
 JOIN course ON(sc.scid=course.cid) 
    WHERE student.Sdept = '200608'
GO
4. 创建一个有学生学号、学生选课门数的视图C_Stu。
CREATE VIEW C_Stu
AS
 SELECT Sno,COUNT(scid) '选课数目' FROM sc GROUP BY Sno 
GO
5. 将自己的信息插入到V_STU视图里,注意学号为5位数。
INSERT INTO V_STU VALUES('00000','jeffery','23','200608')
GO
6. 在V_STU视图里将自己的年龄增加一岁
ALTER VIEW V_STU 
AS
    SELECT Sno,Sname,CASE Sage WHEN Sno='000000' THEN Sage+1 ELSE Sage END,Sdept FROM student
GO
7. 将自己的信息从V_STU视图中删除。
DELETE FROM V_STU WHERE Sno = '000000'
GO

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30046675/viewspace-1358133/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 写出语句
下一篇: 北京拍照外景
请登录后发表评论 登录
全部评论

注册时间:2014-12-01

  • 博文量
    170
  • 访问量
    66340