第二章关系模型-数据库与智能网络.ppt

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

(6)带存在量词的查询 例 查询S3同学所选课程名。 RANGE SC X GET W (C.CN):?X(C.CNO=X.CNO∧X.SNO=’S3’) 注意:操作条件中使用量词时必须用元组变量。 例 查询至少选修一门其课时数为80的课程的学生的姓名。 RANGE C CX SC SCX GET W (S.SN):?SCX(SCX.SNO=S.SNO∧?CX(CX.CNO=SCX.CNO∧CX.CT=80)) 此查询涉及三个关系,需要对两个关系(C和SC)作用存在量词,所以用了两个元组变量。 此语句的执行过程为:先查询课时数为80的课程号,再根据找到的课程号在关系SC中查询其对应的学号,然后根据为些学号在关系S中找到对应的学生姓名。 例 查询选修全部课程的学生姓名。 RANGE C CX SC SCX GET W (S.SN):?CX?SCX(XSC.SNO=S.SNO∧CX.CNO=SCX.CNO) (7)库函数查询 库函数也称集函数。用户在使用查询语言时,经常要作一些简单的运算。 例如要统计某个关系中符合某一条件的元组数,或某些元组在某个属性上分量的和、平均值等等。 在关系数据库语言中提供了有关这类运算的标准函数,增强了基本检索能力。 常用的库函数下表所示 函数名称 功能 AVG 按列计算平均值 TOTAL 按列计算值的总和 MAX 求一列中的最大值 MIN 求一列中的最小值 COUNT 按列值计算元组个数 例 求学号为S1学生的平均分。 GET W (AVG(SC.SCORE):S.SNO=’S1’ 例 求学校共有多少个系 GET W (COUNT(S.DEPT)) COUNT函数自动消去重复行,可计算字段“DEPT“不同值的数目。 3. 数据更新 更新操作包括修改、插入和删除。 (1)修改 修改操作使用UPDATE语句实现,具体操作分为以下三步: ①读数据:使用HOLD语句将要修改的元组从数据库中读到工作空间中; ②修改:利用宿主语言修改工作空间中元组的属性; ③送回:使用UPDATE语句将修改后的元组送回数据库中。 这里HOLD语句是带上并发控制的GET语句。 例 把刘伟教师转到信息系。 HOLD W(T.DEPT):T.TN=‘刘伟’ MOVE ’信息’ TO W.DEPT UPDATE W 在ALPHA语言中,不允许修改关系的主码,例如不能使用UPDATE语句修改教师表T中的教师号。 如果要修改主码,应该先使用删除操作删除该元组,再插入一条具有新主码值的元组。 (2)插入 插入操作使用PUT语句实现,具体操作分为以下两步: ①建立新元组:利用宿主语言在工作空间中建立新元组; ②写数据:使用PUT语句将元组写入到指定的关系中。 例 在SC表中插入一条选课记录(S6,C1,85)。 MOVE S6 TO W.SNO MOVE C1 TO W.CNO MOVE 85 TO W.SCORE PUT W(SC) PUT语句的作用是把工作空间W中的数据写到数据库中,此例即把已经在工作空间建立的一条选课记录写入到选课关系SC中。 注意:PUT语句只能对一个关系进行操作,在插入操作时,拒绝接受主码相同的元组。 (3)删除 ALPHA语言中的删除操作不但可以删除关系中的一些元组,还可以删除一个关系。 删除操作使用DELETE语句实现,具体操作分为以下两步: ① 读数据:使用HOLD语句将要删除的元组从数据库中读到工作空间中; ② 删除:使用DELETE语句删除该元组。 例 删除学号为S6的学生的信息。 HOLD W(S):S.SNO=‘S6’ DELETE W 例 删除全部学生的信息。 HOLD W(S) DELETE W QUEL语言 INGRES是加利福尼亚大学研制的关系数据库管理系统,QUEL语言是INGRES系统的查询语言,它以ALHPA语言为基础,具有较为完善的数据定义、数据查询、数据更新、数据控制等功能。 QUEL语言既可以作为独立的语言进行交互式操作,也可以作为子语言嵌入到主语言中去。 1.数据定义 QUEL语言可以使用CREATE语句定义一个新关系,CREATE语句的一般格式为: CREATE 关系名 (属性名=数据类型及长度[,属性名=数据类型及长度…]) 例 定义学生关系S CREATE S (SNO=C8,SN=C20,AGE=I3,SEX=C2,DEPT=C20) 关系定义后可以由定义者撤消,撤消关系使用语句DESTROY 例如,撤消学生关系S可以写成:DESTROY S。 3.数据查询 查询语句的一般格式为: RANGE OF t1 IS R1 RANGE OF t2 IS R2 …… RANGE OF tk IS

文档评论(0)

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

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

1亿VIP精品文档

相关文档