欢迎来到天天文库
浏览记录
ID:57056030
大小:447.00 KB
页数:62页
时间:2020-07-30
《chp3-3关系数据库标准语言SQL课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、中国人民大学信息学院数据库系统概论AnIntroductiontoDatabaseSystem第三章关系数据库标准语言SQL(续2)AnIntroductiontoDatabaseSystem第三章关系数据库标准语言SQL3.1SQL概述3.2学生-课程数据库3.3数据定义3.4数据查询3.5数据更新3.6视图3.7小结AnIntroductiontoDatabaseSystem3.5数据更新3.5.1插入数据3.5.2修改数据3.5.3删除数据AnIntroductiontoDatabaseS
2、ystem3.5.1插入数据两种插入数据方式1.插入元组2.插入子查询结果可以一次插入多个元组AnIntroductiontoDatabaseSystem一、插入元组语句格式INSERTINTO<表名>[(<属性列1>[,<属性列2>…)]VALUES(<常量1>[,<常量2>]…)功能将新元组插入指定表中AnIntroductiontoDatabaseSystem插入元组(续)INTO子句属性列的顺序可与表定义中的顺序不一致没有指定属性列指定部分属性列VALUES子句提供的值必须与INTO子句
3、匹配值的个数值的类型AnIntroductiontoDatabaseSystem插入元组(续)[例1]将一个新学生元组(学号:200215128;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到Student表中。INSERTINTOStudent(Sno,Sname,Ssex,Sdept,Sage)VALUES('200215128','陈冬','男','IS',18);AnIntroductiontoDatabaseSystem插入元组(续)[例2]将学生张成民的信息插入到Stude
4、nt表中。INSERTINTOStudentVALUES(‘200215126’,‘张成民’,‘男’,18,'CS');AnIntroductiontoDatabaseSystem插入元组(续)[例3]插入一条选课记录('200215128','1')。INSERTINTOSC(Sno,Cno)VALUES(‘200215128’,‘1’);RDBMS将在新插入记录的Grade列上自动地赋空值。或者:INSERTINTOSCVALUES('200215128','1',NULL);AnIntro
5、ductiontoDatabaseSystem二、插入子查询结果语句格式INSERTINTO<表名>[(<属性列1>[,<属性列2>…)]子查询;功能将子查询结果插入指定表中AnIntroductiontoDatabaseSystem插入子查询结果(续)INTO子句(与插入元组类似)子查询SELECT子句目标列必须与INTO子句匹配值的个数值的类型AnIntroductiontoDatabaseSystem插入子查询结果(续)[例4]对每一个系,求学生的平均年龄,并把结果存入数据库。第一步:建表
6、CREATETABLEDept_age(SdeptCHAR(15)/*系名*/Avg_ageSMALLINT);/*学生平均年龄*/AnIntroductiontoDatabaseSystem插入子查询结果(续)第二步:插入数据INSERTINTODept_age(Sdept,Avg_age)SELECTSdept,AVG(Sage)FROMStudentGROUPBYSdept;AnIntroductiontoDatabaseSystem插入子查询结果(续)RDBMS在执行插入语句时会检查所插
7、元组是否破坏表上已定义的完整性规则实体完整性参照完整性用户定义的完整性NOTNULL约束UNIQUE约束值域约束AnIntroductiontoDatabaseSystem3.5数据更新3.5.1插入数据3.5.2修改数据3.5.3删除数据AnIntroductiontoDatabaseSystem3.4.2修改数据语句格式UPDATE<表名>SET<列名>=<表达式>[,<列名>=<表达式>]…[WHERE<条件>];功能修改指定表中满足WHERE子句条件的元组AnIntroductionto
8、DatabaseSystem修改数据(续)SET子句指定修改方式要修改的列修改后取值WHERE子句指定要修改的元组缺省表示要修改表中的所有元组AnIntroductiontoDatabaseSystem修改数据(续)三种修改方式1.修改某一个元组的值2.修改多个元组的值3.带子查询的修改语句AnIntroductiontoDatabaseSystem1.修改某一个元组的值[例5]将学生200215121的年龄改为22岁UPDATEStudentSETSage=22WHERESno='200215
此文档下载收益归作者所有