[其它]数据库课件 第四章.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[其它]数据库课件 第四章

学生关系Student的如下所示: StudentNo StudentName Age Dept 9900011 李明 19 计算机系 9900548 高亮亮 20 自动化系 990203 方平 18 外语系 关系”CSStudent应该是: StudentNo StudentName 9900011 李明 为定义的视图重新设置属性名 CREATE VIEW CSStudent (No, Name) AS SELECT StudentNo, StudentName FROM Student WHERE Dept=‘计算机系’; 视图不仅可以建立在一个基本表上,也可以建立在多个基本表上。 下面定义一个选修了“程序设计”课的计算机系学生该课成绩单视图: CREATE VIEW S1(SNo, SName, Score) AS SELECT S.SNo, S.SName, SC.Score FROM S, SC, C WHERE S.SNo=SC.Sno AND SC.CNo=C.Cno AND Dept=‘计算机系’ AND CName=‘程序设计’; 视图可以建立在另一个视图之上。 “程序设计”课成绩大于80分的计算机系学生视图: CREATE VIEW S2 AS SELECT SNo, SName,Score FROM S1 WHERE Score80; 4.8.3 更新视图 只有在有限的情况下,比如一些非常简单的视图,称为“可更新”视图,才能进行插入、删除或者修改等更新操作;这些更新操作将转换为等价的对基本表的更新。 可更新视图: 1 从单个关系R中选出某些属性定义的视图,R本身也可以是可更新的视图。 2 WHERE子句中不能再嵌套涉及R的子查询 3 SELECT子句中必须包含足够多的属性,凡在基本表中定义的NOT NULL的属性都必须包含在内。 4.8.4 撤消视图 无论视图是否可以更新,都可以将其撤消,撤消视图语句的基本格式为: DROP VIEW 视图名; 撤消视图CSStudent的SQL语句是: DROP VIEW CSStudent; 4.9 本章总结 结构化查询语言SQL: SQL是关系数据库系统最主要的查询语言。SQL集成了数据查询、数据操作、数据定义和数据控制等功能。 基本查询语句:SQL查询最基本的形式为SELECT-FROM-WHERE。 SQL查询中子句的顺序:在SQL的SELECT-FROM-WHERE查询语句中,除这3种子句以外,还有另外3种:GROUP BY、HAVING和ORDER BY。6种子句中只有前2种是必须的,其他附加的子句,如果需要,必须按上面列出的顺序出现。 连接查询:对涉及两个或两个以上的关系进行查询,最基本的方法是采用连接查询。其查询语句把关系代数中的自然连接、选择和投影简单地融合在一起。 嵌套查询:把SELECT-FROM-WHERE查询作为子查询用于另一个查询的WHERE子句中,称为嵌套查询。可把运算符EXISTS、IN、ALL和ANY用于子查询的结果关系来表示布尔值条件;若对表达式求反,可在适当位置加上NOT。如果能确信子查询的结果为单值(仅一个元组、一个分量),就可以在外层查询的WHERE子句中直接用比较运算符。 SQL的关系模型:SQL实际上把关系看作是元组的包(Bag)(即允许有完全相同的元组),而不是元组的集合(Set)(不允许有完全相同的元组)。如果要求结果的关系为集合,则需另加关键字DISTINCT以删除重复的元组。 集合查询:当两个查询生成具有相同属性集的关系时,可用关键字UNION、INTERSECT和EXCEPT进行关系代数中的集合运算:并、交和差,从而实现对多个关系的查询。用上述三种运算符将自动删除重复元组,若想保留重复元组,则需在运算符后加上关键字ALL。 聚合(Aggregation):对关系中某一列的值可以用关键字SUM、AVG(平均值)、MIN、MAX或COUNT加以汇总,这五种处理统称为聚合。可在聚合之前用关键字GROUP BY对元组进行分组,从而得到各分组的汇总数据。还可在分组的基础上用关键字HAVING给出选择条件,从而取出具有给定条件的分组。 数据更新(Data Modification):SQL中的数据更新可利用关键字INSERT(插入新元组)、DELETE(删除已有元组)或UPDATE(修改已有元组中的部分分量)来实现。更新语句既可处理单一元组,也可处理一批元组(因格式或给定条件而异)

文档评论(0)

ipbohn97 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档