- 1、本文档共50页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库技术讲义 第3章 关系数据库标准语言SQL-3
3.4 数据更新 SQL中数据的更新操作包括插入数据、修改数据和删除数据三条语句,分别通过:INSERT、UPDATE和DELETE语句来实现。 3.4.1 插入数据 一、插入单个元组 语法格式: INSERT INTO 表名[(列名1[,列名2…)] VALUES (常量1[,常量2] …); 其功能是将新元组插入到指定表中,其中新记录列1的值为常量1,列2的值为常量2,依次类推。INTO子句中没有出现的属性列,新纪录在这些列上将取空值。在表定义时为NOT NULL的属性列不能取空。如果INTO子句中没有指定任何列,则新插入的记录必须在每列上都有值,值的顺序和表中列顺序一致。 3.4.1 插入数据 例:插入一个新的学生记录 INSERT INTO Student VALUES(‘95020’, ‘陈冬’, ‘男’,‘IS’,18); 例:插入一条选课记录 INSERT INTO SC(Sno,Cno) VALUES(‘95020’, ‘1’); 3.4.1 插入数据 二、插入子查询结果 语法格式为: INSERT INTO 表名[(列名1[,列名2…)] 子查询 插入语句中列名的列表应该和子查询的目标列表达式一致。 3.4.1 插入数据 例:对每一个系求平均年龄并插入数据库。 INSERT INTO Deptage(Sdept,Avgage) SELECT Sdept,AVG(Sage) FROM Student GROUP BY Sdept; 3.4.2 修改数据 修改语句的一般语法格式为: UPDATE 表名 SET 列名=表达式|子查询 [, 列名=表达式|子查询] … [WHERE条件] 如果省略WHERE子句则表示要修改表中的所有元组。 3.4.2 修改数据 一、修改某个元组的值 例:将学生95001的年龄改为22岁 UPDATE Student SET Sage=22 WHERE Sno=‘95001’; 二、修改多个元组的值 例:将所有学生的年龄加1 UPDATE Student SET Sage=Sage+1; 3.4.2 修改数据 三、带子查询的修改语句 例:将计算机科学系全体学生的成绩置0 UPDATE SC SET Sage=0 WHERE ‘CS’= (SELECT Sdept FROM Student WHERE Student.Sno=SC.Sno); 3.4.3 删除数据 删除语句的语法格式为: DELETE FROM 表名 [WHERE 条件]; DELETE语句从表中删除满足WHERE条件的元组,如果省略WHERE则删除表中所有元组。 3.4.3 删除数据 一、删除某个元组 例:删除学号为95019的学生 DELETE FROM Student WHERE Sno=’95019’; 二、删除多个元组 例:删除所有的学生选课记录 DELETE FROM SC; 3.4.3 删除数据 三、带子查询的删除语句 例:删除计算机系所有学生的选课记录 DELETE FROM SC WHERE ‘CS’=(SELECT Sdept FROM Student WHERE Student.Sno=SC.Sno); 四、更新操作与数据库的一致性 3.5 视图 视图是从一个或几个基本表导出的表,是一个虚报。数据库中只存储视图的定义,而不存放数据。视图一经定义,就可以和基本表一样被查询、删除,我们也可以在一个视图上再定义视图,但对视图的更新操作有一定的限制。 3.5.1 定义视图 一、建立视图 用CREATE VIEW语句创建视图,语法格式为: CREATE VIEW 视图名 [(列名[,列名…])] AS 子查询 [WITH CHECK OPTION]; 子查询是任意复杂的SELECT语句,但通常不允许含有ORDER BY和DISTINCT子句。 WITH CHECK OPTION表示对视图进行更新操作是满足视图中定义的谓词条件。 3.5.1 定义视图 组成视图的属性列或者全部省略或者全部指定。如果省略则表示视图列由子查询中的目标列表达式组成,但以下三种情况要指定列名: 某个目标列不是单纯的属性名,而是集函数和列表达式 多表连接时选出了几个同名列作为视图字段 需要再视图中为某个列启用新的更合适的名字 若一个视图是从基本表导出的,并且只是去掉了基本表的某些行和某些列,但保留了码,我们称这类视图为行列子集视图。 3.5.1 定义视图 二、删除视图 语法格式为: DROP VIEW 视图名; 视图定义后可以
您可能关注的文档
最近下载
- 内蒙古鄂尔多斯准格尔经济开发区(大路产业园)区域性地震安全性评价报告.docx VIP
- 部编版六年级语文上册《夏天里的成长》课件.pptx
- 山西省2020年中考数学试题(Word版,含答案与解析).pdf VIP
- 长沙市雅礼中学2023-2024学年高二上学期期中考试物理试题及参考答案.pdf VIP
- 精品解析:山东省菏泽市2023-2024学年高二上学期11月期中化学试题(解析版).docx VIP
- 离婚协议书标准版下载[汇编].pdf
- 2023年山东省青岛西海岸新区自然资源局遴选劳务派遣人员69人笔试参考题库(共500题)答案详解版.docx
- 消融电极产品技术要求模板.docx
- YBT 6016-2022球墨铸铁管绿色工厂评价要求.pdf
- “双减”背景下家校共育的问题及策略.doc
文档评论(0)