第03章关系数据库语言SQL.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[例1] 查询全体学生的学号与姓名。 Πs#,Sname(s) SELECT S#,Sname FROM S;? WHERE AVG_GRADE 80; 建立分组视图 [例5] 将学生的学号及他的平均成绩定义为一个视图 假设SC表中“成绩”列Grade为数字型 CREAT VIEW S_G(S#,Gavg) AS SELECT S#,AVG(score) FROM SC GROUP BY S#; 视图的创建(续) 一类不易扩充的视图 以 SELECT * 方式创建的视图可扩充性差,应尽可能避免 插入子查询结果 [例4] 对每一个系,求学生的平均年龄,并把结果存入数据库。 第一步:建表 CREATE TABLE Deptage (Sdept CHAR(15) , /* 系名*/ Avgage REAL); /*学生平均年龄*/ 插入子查询结果 第二步:插入数据 INSERT INTO Deptage(Sdept,Avgage) SELECT Sdept,AVG(Sage) FROM S GROUP BY Sdept; 插入子查询结果 INTO子句(与插入单条元组类似) 指定要插入数据的表名及属性列 属性列的顺序可与表定义中的顺序不一致 没有指定属性列:表示要插入的是一条完整的元组 指定部分属性列:插入的元组在其余属性列上取空值 子查询 SELECT子句目标列必须与INTO子句匹配 值的个数 值的类型 插入表 [例5] 某一个班级的选课情况已在基本表SC4(S#,C#)中,把SC4的数据插入到表SC中。 INSERT INTO SC(S#,C#) TABLE SC4; 数据删除 SQL的删除操作是指从基本表中删除元组,其句法如下: DELETE FROM 基本表名 [WHERE 条件表达式] 其语义是从基本表中删除满足条件表达式的元组。删除语句实际上是“SELECT * FROM基本表名[WHERE条件表达式]”和DELETE操作的结合,每找到一个元组,就把它删去。应该注意,DELETE语句只能从一个基本表中删除元组。WHERE子句中条件可以嵌套,也可以是来自几个基本表的复合条件。 数据删除 DELETE FROM 表名 [WHERE 条件]; 功能 删除指定表中满足WHERE子句条件的元组 WHERE子句 指定要删除的元组 缺省表示要删除表中的所有元组 数据删除 三种删除方式 删除某一个元组 删除多个元组 带子查询的删除语句 删除某一个元组的值 [例6] 删除学号为08019的学生记录。 DELETE FROM S WHERE S#=‘08019; 删除多个元组的值 [例7] 删除c2号课程的所有选课记录。 DELETE FROM SC WHERE C#=‘c2; [例8] 删除所有的学生选课记录。 DELETE FROM SC; 带子查询的删除语句 [例9] 删除计算机科学系所有学生的选课记录。 DELETE FROM SC WHERE S# IN (SELETE S# FROM S WHERE Sdept=‘CS’); 数据删除(续) DBMS在执行删除语句时会检查所插元组 是否破坏表上已定义的完整性规则 参照完整性 不允许删除 级联删除 数据修改 当需要修改基本表中元组的某些列值时,可以用UPDATE语句实现,其句法如下: UPDATE 基本表名 SET 列名=值表达式[,列名=值表达式…]│ROW =(元组)[WHERE 条件表达式] 其语义是:修改基本表中满足条件表达式的那些元组中的列值,需修改的列值在SET子句中指出。 数据修改 语句格式 UPDATE 表名 SET 列名=表达式[,列名=表达式…] │ROW =(元组)

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档