33关系数据库标准语言SQL.ppt
《33关系数据库标准语言SQL.ppt》由会员分享,可在线阅读,更多相关《33关系数据库标准语言SQL.ppt(40页珍藏版)》请在三一办公上搜索。
1、数据库系统概论An Introduction to Database System第三章 关系数据库标准语言SQL(续2),第三章 关系数据库标准语言SQL,3.1 SQL概述3.2 学生-课程数据库3.3 数据定义3.4 数据查询3.5 数据更新3.6 视图3.7 小结,3.5 数 据 更 新,3.5.1 插入数据3.5.2 修改数据3.5.3 删除数据,3.5.1 插入数据,一、插入数据记录插入数据是把新的记录插入到一个存在的表中。插入数据使用语句INSERT INTO,可分为以下几种情况。1 插入一行新记录语法格式为:INSERT INTO(,)VALUES()列名的排列顺序不一定要和表
2、定义时的顺序一致。但当指定列名和VALUES子句值的排列顺序必须做到顺序一致,个数相等,数据类型一一对应。必须用逗号将各个数据分开,字符型数据要用单引号括起来。INTO子句中没有指定列名,则新插入的记录必须在每个属性列上均有值,且VALUES子句中值的排列顺序要和表中各属性列的排列顺序一致。,插入元组(续),例1 将一个新学生元组插入到Student表中。INSERT INTO Student(Sno,Sname,Ssex,Sdept,Sage)VALUES(200215128,陈冬,男,IS,18);例2 将学生张成民的信息插入到Student表中。INSERT INTO Student V
3、ALUES(200215126,张成民,男,18,CS);,插入元组(续),2 插入一行的部分数据值例3 插入一条选课记录(200215128,1)。INSERT INTO SC(Sno,Cno)VALUES(200215128,1);RDBMS将在新插入记录的Grade列上自动地赋空值。或者:INSERT INTO SC VALUES(200215128,1,NULL);将VALUES子句中的值按照INTO子句中指定列名的顺序插入到表中对于INTO子句中没有出现的列,则新插入的记录在这些列上将取空值,如上例的SCORE即赋空值。但在表定义时有NOT NULL约束的属性列不能取空值。,二、插入
4、子查询结果,3 插入多行记录用于表间的拷贝,将一个表中的数据抽取数行插入另一表中,可以通过子查询来实现。插入数据的命令语法格式为:INSERT INTO(,)子查询说明:SELECT子句目标列必须与INTO子句匹配值的个数值的类型,插入子查询结果(续),例4 对每一个系,求学生的平均年龄,并把结果存入数据库。第一步:建表 CREATE TABLE Dept_age(Sdept CHAR(15)/*系名*/Avg_age SMALLINT);/*学生平均年龄*/第二步:插入数据 INSERT INTO Dept_age(Sdept,Avg_age)SELECT Sdept,AVG(Sage)FR
5、OM Student GROUP BY Sdept;,3.5 数 据 更 新,3.5.1 插入数据3.5.2 修改数据3.5.3 删除数据,3.4.2 修改数据,语句格式 UPDATE SET=,=WHERE;功能修改指定表中满足WHERE子句条件的元组其中:是指要修改的表SET子句给出要修改的列及其修改后的值WHERE子句指定待修改的记录应当满足的条件,WHERE子句省略时,则修改表中的所有记录。,修改数据(续),三种修改方式1.修改某一个元组的值2.修改多个元组的值3.带子查询的修改语句,1.修改某一个元组的值,例5 将学生200215121的年龄改为22岁 UPDATE Student
6、SET Sage=22 WHERE Sno=200215121;,2.修改多个元组的值,例6 将所有学生的年龄增加1岁 UPDATE Student SET Sage=Sage+1;,3.带子查询的修改语句,例7 将计算机科学系全体学生的成绩置零。UPDATE SC SET Grade=0 WHERE CS=(SELETE Sdept FROM Student WHERE Student.Sno=SC.Sno);,3.5 数 据 更 新,3.5.1 插入数据3.5.2 修改数据3.5.3 删除数据,3.5.3 删除数据,语句格式 DELETE FROM WHERE;功能删除指定表中满足WHER
7、E子句条件的元组WHERE子句指定要删除的元组缺省表示要删除表中的全部元组,表的定义不会删除,删除数据(续),三种删除方式1.删除某一个元组的值例8 删除学号为200215128的学生记录。DELETE FROM Student WHERE Sno=200215128 2.删除多个元组的值例9 删除所有的学生选课记录。DELETE FROM SC;3.带子查询的删除语句例10 删除计算机科学系所有学生的选课记录。DELETE FROM SC WHERE CS=(SELETE Sdept FROM Student WHERE Student.Sno=SC.Sno);,第三章 关系数据库标准语言S
8、QL,3.1 SQL概述3.2 学生-课程数据库3.3 数据定义3.4 数据查询3.5 数据更新3.6 视图3.7 小结,3.6 视 图,视图的特点虚表,是从一个或几个基本表(或视图)导出的表只存放视图的定义,不存放视图对应的数据基表中的数据发生变化,从视图中查询出的数据也随之改变基于视图的操作 查询 删除 受限更新 定义基于该视图的新视图,3.6 视 图,3.6.1 定义视图3.6.2 查询视图3.6.3 更新视图3.6.4 视图的作用,一、建立视图,语句格式 CREATE VIEW AS WITH CHECK OPTION;其中:1.为可选项,省略时,视图的列名由子查询的结果决定。2.以下
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 33 关系 数据库 标准 语言 SQL
链接地址:https://www.31ppt.com/p-6021253.html