数据库语言SQLppt课件.ppt

上传人:sccc 文档编号:5360882 上传时间:2023-06-29 格式:PPT 页数:95 大小:263.51KB
返回 下载 相关 举报
数据库语言SQLppt课件.ppt_第1页
第1页 / 共95页
数据库语言SQLppt课件.ppt_第2页
第2页 / 共95页
数据库语言SQLppt课件.ppt_第3页
第3页 / 共95页
数据库语言SQLppt课件.ppt_第4页
第4页 / 共95页
数据库语言SQLppt课件.ppt_第5页
第5页 / 共95页
点击查看更多>>
资源描述

《数据库语言SQLppt课件.ppt》由会员分享,可在线阅读,更多相关《数据库语言SQLppt课件.ppt(95页珍藏版)》请在三一办公上搜索。

1、3 数据库语言SQL,Elelen Enmi胶原蛋白口服液买四赠一 品牌正品情侣装 亲子装全场包邮 淘宝:http:/或者拍拍:http:/,本章目标,本章主要介绍SQL语言的基本语法和使用方式,要求熟练掌握SQL语言的使用规则,能够根据实际需求写出能够准确完成操作的SQL语句。,3.1 概述,SQL的发展1974年,由Boyce和Chamberlin提出19751979,IBM San Jose Research Lab的关系数据库管理系统原型System R实施了这种语言SQL-86是第一个SQL标准SQL-89、SQL-92(SQL2)、SQL-99(SQL3)现状大部分DBMS产品都支

2、持SQL,成为操作数据库的标准语言有特殊性,支持程度不同,数据定义(DDL)定义、删除、修改关系模式(基本表)定义、删除视图(View)定义、删除索引(Index)数据操纵(DML)数据查询数据增、删、改 数据控制(DCL)用户访问权限的授予、收回,3.1.1 SQL的功能,交互式SQL一般DBMS都提供联机交互工具用户可直接键入SQL命令对数据库进行操作由DBMS来进行解释 嵌入式SQL能将SQL语句嵌入到高级语言(宿主语言)使应用程序充分利用SQL访问数据库的能力、宿主语言的过程处理能力一般需要预编译,将嵌入的SQL语句转化为宿主语言编译器能处理的语句,3.1.2 SQL的形式,数据定义C

3、reate、Drop、Alter数据操纵数据查询:Select数据修改:Insert、Update、Delete数据控制Grant、Revoke,3.1.3 SQL的动词,数据查询是数据库应用的核心功能。基本结构:Select A1,A2,.,AnFrom r1,r2,.,rmWhere P,3.2 数据查询,A1,A2,.,An(p(r1r1.rm),3.2.1 Select语句的含义,对 From 子句中的各关系,作笛卡儿积()对 Where 子句中的逻辑表达式进行选择()运算,找出符合条件的元组。根据 Select 子句中的属性列表,对上述结果作投影()操作。查询操作的对象是关系,结果还

4、是一个关系,是一个结果集,是一个动态数据集。,3.2.2 Select子句 对应于关系代数的投影()运算,用以列出查询结果集中的期望属性。,重复元组SQL 具有包的特性Select子句的缺省情况是保留重复元组(ALL),可用 Distinct去除重复元组Select Distinct sdept From StudentSelect All sdept From Student去除重复元组:费时需要临时表的支持,*与属性列表 星号*表示所有属性星号*:按关系模式中属性的顺序排列,并具有一定的逻辑数据独立性显式列出属性名:按用户顺序排列Select*From StudentSelect Stud

5、ent.*,cno,grade From Student,SC Where Student.sno=SC.sno,更名为结果集中的某个属性改名使结果集更具可读性Select sno as stu_no,cno as course_no,grade From SCSelect sno,sname,2001-sage as birthday From Student,3.2.3 where子句,where子句对应与关系代数中的选择()。查询满足指定条件的元组可以通过Where子句来实现。使where子句中的逻辑表达式返回True值的元组,是符合要求的元组,将被选择出来。,运算符比较:、=、=、no

6、t+确定范围:Between A and B、Not Between A and B 确定集合:IN、NOT IN字符匹配:LIKE,NOT LIKE空值:IS NULL、IS NOT NULL多重条件:AND、OR、NOT,like字符匹配:Like、Not Like通配符:%匹配任意字符串_ 匹配任意一个字符大小写敏感,列出姓张的学生的学号、姓名。Select sno,sname From Student Where sname LIKE 张%列出张姓且单名的学生的学号、姓名。Select sno,sname From Student Where sname LIKE 张_ _,转义符 e

7、scape 例:列出课程名称中带有_的课号及课名。Select cno,cnameFrom CourseWhere cname LIKE%_%escape,3.2.4 from子句,From子句对应与关系代数中的笛卡儿积()列出将被扫描的关系(表)例:列出所有学生的学号、姓名、课号、成绩。Select Sudent.sno,sname,SC.cno,grade From Student,SC Where Student.sno=SC.sno,元组变量为 From 子句中的关系定义元组变量方便关系名的引用在同一关系的笛卡儿积中进行辨别例:列出与95001同岁的同学的学号,姓名,年龄。Select

8、T.sno,T.sname,T.sage FromStudent as T,Student as S WhereS.sno=95001 ANDT.sage=S.sage,3.2.5 Order By子句,指定结果集中元组的排列次序耗时ASC(缺省)、DESC、未选中的属性例:列出CS系中的男生的学号、姓名、年龄,并按年龄进行排列(升序)。Select sno,sname,sage From Student Where sdept=CS Order By sage ASC,3.3 数据定义语言,数据定义语言(Data Definition Language)Create、Drop、Alter定义

9、一组关系(基本表)、说明各关系的信息各关系的模式各属性的值域完整性约束索引安全性和权限,3.3.1 SQL中的域类型,字符型char(n)、varchar(n)数值型integer、smallintnumeric(p,d)real、double、float(n)日期/时间型datetime,3.3.2 SQL中的域定义,域定义语句(SQL-92支持)需重复使用的Create Domain stu_name varchar(20)Create Domain zip_code char(6)域的删除Drop Domain datelog各DBMS的方法是不同的Restrict/Cascade使用该

10、域的属性的处理,3.3.3 SQL中的模式定义,Create Table r(A1D1,A2D2,AnDn,)其中:r 关系名(表名)、Ai 关系 r 的一个属性名Dn 属性Ai域值的域类型主键声明:primary key(Aj1,Aj2,Ajvm),Create Domain stu_name varchar(20)Create Table Student(sno char(10)primary key(sno),sname stu_name,sage smallint,ssex char(1),sdept char(2),Create Table Course(cno char(10)pr

11、imary key(cno),cname varchar(20),credit smallint)Create Table SC(sno char(10)not null,cno char(10)not null,grade smallint,primary key(sno,cno),Elelen Enmi胶原蛋白口服液买四赠一 品牌正品情侣装 亲子装全场包邮 淘宝:http:/或者拍拍:http:/,3.3.4 删除表结构,用SQL删除关系(表)将整个关系模式(表结构)彻底删除表中的数据也将被删除Drop Table rDrop Table student,3.3.5 修改表结构,删除表中的

12、某属性去除属性及相应的数据Alter Table r Drop A 增加表中的属性向已经存在的表中添加属性allow null已有的元组中该属性的值被置为NullAlter Table r Add A DAlter Table student phone char(16),3.3.6 Default Value,属性的默认值用户不提供某属性的值时,默认值被使用初始值DDL中:ModifyDate char(30)Default TimeStampAlter Table student Add ID integer Default 1001,3.3.7 索引Index,索引是一种数据结构,是对照

13、表、指针表索引是为了加速对表中元组的检索而创建的一种分散存储结构(B树)索引是对表而建立的,由除存放表的数据页面以外的索引页面组成索引是把双刃剑,减慢更新的速度索引不是SQL标准的要求 索引的种类聚簇索引(Clustered Index)非聚簇索引(Non-Clustered Index),聚簇索引(Clustered Index)表中的元组按聚簇索引的顺序物理地存放根级页面-中间层页面-叶级页面(数据页面)一个表中只能有一个聚簇索引更新的复杂性,需要大量的临时空间 非聚簇索引(Non-Clustered Index)表中的元组按聚簇索引的顺序物理地存放根级页面-中间层页面-叶级页面(数据页面

14、)一个表中只能有一个聚簇索引更新的复杂性,需要大量的临时空间,CREATE UNIQUE CLUSTERED|NONCLUSTEREDINDEX index-name On TableName(Column,Column,)Create Index YearIndex On Movie(year)Create Clustered Index SnoIndex On student(sno)Drop Index YearIndex,3.4 数据添加,用SQL的插入语句,向数据库表中添加数据按关系模式的属性顺序Insert Into Student Values(0095001,张三,27,M,C

15、S)按指定的属性顺序,也可以只添加部分属性(非Null属性为必需)Insert Into Student(sno,sname,sage)Values(0095002,李四,26),3.5 聚合函数,把一列中的值进行聚合运算,返回单值的函数。五个预定义的聚合函数:平均值:Avg总和:Sum最小值:Min最大值:Max计数:CountCount(*)、Count(Distinct),3.5.1 Group By,将查询结果集按某一列或多列的值分组,值相等的为一组,一个分组以一个元组的形式出现。只有出现在Group By子句中的属性,才可出现在Select子句中。例:统计各系学生的人数。Select

16、 sdept,count(*)as stu_count From Student Group By sdept,3.5.2 Having,针对聚合函数的结果值进行筛选(选择),它作用于分组计算结果集。跟在Group By子句的后面,没有Group By则针对全表。例:列出具有两门(含)以上不及格的学生的学号、不及格的课目数。Select sno,count(sno)From SC Where grade=2,3.5.3 Having与Where的区别,Where 决定哪些元组被选择参加运算,作用于关系中的元组。Having 决定哪些分组符合要求,作用于分组。聚合函数的条件关系必须用Having

17、,Where中不应出现聚合函数。,3.5.4 聚合函数忽略Null,Count:不计Sum:不将其计入Avg:具有 Null 的元组不参与Max/Min:不参与例:Select count(sdept)From Student Select Avg(sage)From Student,3.6 子查询,子查询是嵌套在另一查询中的 Select-From-Where 表达式(Where/Having)。SQL允许多层嵌套,由内而外地进行分析,子查询的结果作为父查询的查找条件。可以用多个简单查询来构成复杂查询,以增强SQL的查询能力。子查询中不使用 Order By 子句,Order By子句只能对

18、最终查询结果进行排序。,3.6.1 单值比较,返回单值的子查询,只返回一行一列父查询与单值子查询之间用比较运算符进行连接运算符:、=、=、例:找出与95001同龄的学生 Select*From Student Where sage=(Select sage From Student Where sno=95001),3.6.2 多值,子查询返回多行一列 运算符:In、All、Some(Any)、Exists,in标量值与子查询返回集中的某一个相等,true in 被用来测试多值中的成员。例:查询选修C01课程的学生的学号、姓名。Select sno,sname From Student Whe

19、re sno IN(Select sno From SC Where cno=C01),例:查询选修了 数据库的学生的学号和姓名 Select sno,sname From Student Where sno IN(Select sno From SC Where cno IN(Select cno From Course Where cname=数据库),all多值比较:多行一列父查询与多值子查询之间的比较需用All来连接标量值s比子查询返回集R中的每个都大时,sAll R 为 True All 表示所有 all、=all、all all 等价于 not in 例:找出年龄最小的学生 Sel

20、ect*From Student Where sage all(Select sage From Student),some、any多值比较:多行一列父查询与多值子查询之间的比较需用Some/Any来连接标量值s比子查询返回集R中的某一个都大时,s Some R为True 或 s Any R为True Some(早期用Any)表示某一个,只要有一个即返回真 some、=some、some=some 等价于 in、some 不等价于 not in,例:找出不是最小年龄的学生 Select*From student Where sage some(Select sage From Student)

21、例:找出具有最高平均成绩的学号及平均成绩 Select sno,avg(grade)From SC Group By sno Having avg(grade)=all(Select avg(grade)From SC Group By sno),existsExists+子查询用来判断该子查询是否返回元组当子查询的结果集非空时,Exists为True当子查询的结果集为空时,Exists为False不关心子查询的具体内容,因此用 Select*,例:列出选修了C01课程的学生的学号、姓名 Select sno,sname From Student Where Exists(Select*Fro

22、m SC Where SC.sno=Student.sno And cno=C01),例:列出得过100分的学生的学号、姓名 Select sno,sname From Student Where Exists(Select*From SC Where SC.sno=Student.sno And grade=100),例:查询选修了C01课程的学生的系主任 Select manager From department Where Exists(Select*From student Where sdept=department.depid And Exists(Select*From SC

23、Where SC.sno=student.sno And cno=C01),例:列出没有选C01课程的学生的学号、姓名 Select sno,sname From Student Where Not Exists(Select*From SC Where SC.sno=Student.sno And cno=C01),Elelen Enmi胶原蛋白口服液买四赠一 品牌正品情侣装 亲子装全场包邮 淘宝:http:/或者拍拍:http:/,例:查询选修了所有课程的学生的姓名(ForAll)Select sname From Student Where Not Exists(Select*From

24、Course Where Not Exists(Select*From SC Where Student.sno=SC.sno And SC.cno=Co),SQL-92支持多列的成员资格测试(ASA7.0不支持)例:找出同系、同年龄、同性别的学生 Select*from Student as T Where(T.sdept,T.sage,T.ssex)IN(Select sdept,sage,ssex From student as S Where S.sno T.sno),3.6.3 多列元组的比较,3.6.4 派生关系,SQL-92允许在 From中使用查询表达式必须为其取名例:查询平均

25、成绩大于75分的学号、姓名、平均成绩 Select stu_no,sname,avg_grade From Student,(Select sno,avg(grade)From SC Group By sno)as S(stu_no,avg_grade)Where Student.sno=S.stu_no And avg_grade 75,3.7 空值与连接,3.7.1 NULL表示数据的缺失一个确实存在,但我们不知道的值对本实体此数值无意义,可能是设计上的失误是SQL的关键字,用于任何类型描述缺失的值,3.7.3 NULL的运算法则,对NULL值和其他任何值作算术运算时,结果为NULL对NU

26、LL值和其他任何值作比较时,结果为UNKOWNIs Null/Is Not Null,3.7.4 Unkown的运算规则,视True为1,False为0,Unkown为1/2AND:取小OR:取大NOT:取1的补真值表不必死记硬背,3.8 数据库的修改,数据库修改包括插入数据、修改数据、删除数据。,3.8.1 数据删除,只能对整个元组操作,不能只删除某些属性上的值。只能对一个关系起作用,若要从多个关系中删除元组,则必须对每个关系分别执行删除命令。Delete From r Where P从关系 r 中删除满足P的元组,只是删除数据,而不是定义。,删除单个元组例:删除学号为95001的学生的选课

27、信息 Delete From SCWhere sno=95001删除多个元组例:删除选课而未参加考试的学生的选课信息 Delete From SCWhere grade is null删除整个关系中的所有数据例:删除所有学生的选课信息 Delete From SC,3.8.2 数据插入,单行插入:一次只插入一个元组例:新增一个学生信息 Insert Into Student Values(98001,Gloria,25,F,CS),多行插入:插入一个集合例:给CS系的学生开设必修课C05,建立选课信息 Insert Into SC Select sno,cno,null From Studen

28、t,Course Where sdept=CS and cno=C05,3.8.3 数据更新,改变符合条件的某个(某些)元组的属性值例:将95001学生转入MA系 Update Student Set sdept=MA Where sno=95001 例:所有学生年龄加1 Update Student Set sage=sage+1,例:将选修C05课程的学生的成绩改为该课的平均成绩 Update SC Set grade=(Select avg(grade)From SC Where cno=C05)Where cno=C05,3.9 视图,是从一个或几个基本表(或视图)中导出的虚表数据库中

29、只保存它的定义是RDBMS提供给用户以多种角度观察数据库中数据的重要机制创建视图、删除 Create View v as Drop View v,例:计算机系的花名册 Create View CS_Stu as Select sno,sname,ssex From Student Where sdept=CS,3.9.1 视图(View),视图名可以出现在任何关系名可以出现的地方例:列出计算机系的男生 Select sno,sname From CS_Stu Where ssex=M,例:建立学生平均成绩视图 Create View avg_grade(sno,avg)as Select sn

30、o,avg(grade)From SC Group By sno例:找出平均成绩大于等75的学生 Select*From avg_grade Where avg=75注意:此例的使用方法是非标准的。,视图的更新:单表、原始属性构成的视图可以更新(像基本表那样更新)由多表构成的视图由很大的限制视图中的非原始属性也不能更新例:Update avg_grade Set avg=100 Where sno=95001,3.9.2 视图的作用,简化用户的操作不同的用户可从不同的角度看待同一数据支持一定的逻辑数据独立性数据的安全性,3.9.3 综合示例,Create Domain stu_name var

31、char(20)Create Table Student(sno char(10)not null,sname stu_name,sage smallint,ssex char(1),sdept char(2),primary key(sno),check(ssex in(M,F),Create Table Course(cno char(10)not null,cname varchar(20),credit smallint,primary key(cno)Create Table SC(sno char(10)not null,cno char(10)not null,grade sma

32、llint,primary key(sno,cno),check(grade=0 and grade=100),3.10 嵌入式SQL,前面所介绍的SQL语言作为一种独立的自含式语言,是联机终端用户在交互环境下使用的,称为交互式SQL(INTERACTIVE SQL),简称ISQL。,在实际应用当中,常常还需要解决这样两个问题:有许多应用是过程化的,要求根据不同的条件来完成不同的任务;有许多应用不仅需要读出数据,还必须读查询得到的数据进行处理。,对于上述问题,单独使用SQL语言是很难满足实际需求的。为了解决这些问题,SQL还提出了另外一种使用方式,即可以作为一种数据子语言嵌入某些主语言中,利用

33、高级语言的过程性结构来弥补SQL语言实现复杂应用方面的不足。这种将SQL嵌入COBOL,C,C+,FORTRAN,中使用,称为嵌入式SQL(EMBEDDED SQL),简称ESQL;而接受SQL嵌入的高级语言,称为主语言或者宿主语言。,对于宿主语言中的嵌入式SQl,DBMS通常采用两种方法处理。一是预编译方法;一是修改和扩充主语言方法,使之能够处理SQL。当前主要采用第一种方法。其过程是,有DBMS的预处理程序对源程序进行扫描,识别出SQL语句,然后将它们转换为主语言调用语句,从而使得主语言能过识别它们,最后由主语言的编译程序将整个源程序编译成目标代码。,所有在终端交互方式下使用的SQL均能在

34、嵌入方式下使用。由于使用方式的差异,存在着具体操作方式上的不同。但无论是怎样的使用方式,都需要解决下面三个主要问题:应用程序中主语言的语句和SQL的语句,这两种语句;应用程序中既有主语言变量又有SQL列变量,如何区分这两种变量;主语言变量一般均为标量,而SQL中的列变量一般均为集合量,如何建立由集合量到标量的转换。,3.10.1 主语言语句和SQL语句的区分,在嵌入方式下,所有SQL语句在嵌入主语句的程序时几乎都必须在其前缀加EXEC SQL,而结束标志可以因主语言不同而不同,一般是在语句结束处用END-EXEC 或用分号“;”。在程序中所使用的SQL中的表,包括基表和视图都要用EXEC SQ

35、L DECLEAR语句加以说明。SQL语句执行后,系统要反馈给程序以信息,这些信息均送入SQL通讯区(SQL Communication Area)SQLCA。SQLCA是一个数据结构,在应用程序中用EXEC SQL INCLUDE SQLCA 语句加以定义。,SQLCA中有一个存放每次执行SQL语句后返回代码的变量SQLCODE,这是一个整型变量,反映SQL语句执行后的结果状态。应用程序每执行一条SQl语句之后都应测试一次SQLCODE的值。当它为0时表示正常结束,即SQL语句成功;非0时为非正常结束,SQL语句不成功。即使说,SQLCODE的基本功用是DBMS向宿主程序报告执行SQL语句的

36、情况。,Elelen Enmi胶原蛋白口服液买四赠一 品牌正品情侣装 亲子装全场包邮 淘宝:http:/或者拍拍:http:/,例:在一些高级语言中使用嵌入式SQL语言的格式与删除S的情况。在C中使用SQL语言使以EXEC SQL开始,以分号“;”结束,其格式为:EXEC SQL;删除关系S的命令为:EXEC SQL DROP TABLE S;,在COBLE 中以EXEC SQL开始,以END_EXEC结束,格式为:EXEC SQLEND_EXEC删除S的语句为:EXEC SQL DROP TABLE S END_EXEC在Power Builder中使用SQL与通常SQL没有任何区别,语句前

37、不需要加任何EXEC SQL,只需用分号作为语句结束标记,即删除S的语句为:DROP TABLE S,嵌入式SQL语句根据其作用的不同,可以分为可执行语句和说明性语句两类。可执行语句又分为数据定义、数据控制和数据操作三种。在宿主语言编写的程序(宿主程序)中任何允许出现执行高级语言语句的地方,都可以嵌入可执行SQL语句;任何允许出现说明性高级语句的地方,都可以写说明性SQL语句。,3.10.2 主语言变量与SQL变量的区别,主变量与指示变量主变量 在嵌入方式下,程序中的SQL语句段内可使用主语言的程序变量来输入和输出数据。SQL中使用主语言程序定义的变量称为主变量。,主变量根据其作用的不同,分为

38、输入主变量和输出主变量。输入主变量由应用程序对其赋值,SQL加以引用;输出主变量由SQL语句对其赋值或设置状态信息,返回给应用程序。一个主变量可以既是输入主变量,又是输出主变量。,利用输入主变量,我们可以完成以下功能:指定向数据库中插入的数据;把数据库中的数据修改为指定值;指定WHERE子句或HAVING子句中的条件。利用输出主变量,我们可以得到SQL语句的执行结果和状态信息。,指示变量一个主变量可以附带一个任选的指示变量(indicator variable)。指示变量是一个整型变量,用来“指示”所述主变量的值或者条件。指示变量可以指示输入主变量是否为空值,可以检测输出主变量是否为空值,值是

39、否被截断等。,主变量与指示变量的说明 所有SQL语句中用到的主变量和指示变量都必须加以说明。说明的开头行与结尾行分别为:EXEC SQL BEGIN DECLEAR SECTIONEXEC SQL END DECLEAR SECTION。说明了之后的主变量和指示变量,可以在SQL语句中任何一个能够使用表达式的地方调用。,SQL语句中的主变量名称前必须添加冒号()作为标志,这是为了与数据库中的对象名(表名,视图名,属性名等)向区别。同样,SQL语句中的指示变量之前也必须加有冒号,同时紧跟在所指的主变量之后。在SQL语句之外的其它地方,说明之后的主变量和指示变量可以直接引用,不必添加冒号。在主程序

40、内,一般不出现SQL变量。能够使用表达式的地方调用。,3.10.3游标语句的使用,1.概念 SQL语言与主语言在数据处理有着不同方式。SQL是面向集合的,一条SQL语句原则上可以产生或处理多条记录。主语言使面向记录的,一组主变量一次只能存放一条记录,仅仅使用主变量并不能够完全满足SQL语句向应用程序输出数据的要求。这里基本的问题是,在嵌入方式下,SQL的变量是集合型的,主变量为标量型的,SQL变量不能够直接提供给主程序使用。为了解决这个问题,就需要有一种机制,将SQL变量中的集合量逐个取出送入主变量内,进而提供给主程序使用。解决问题的基本思路是在嵌入式SQL中引入“游标”的概念,用游标来协调S

41、QL和主语言的两种不同数据处理方式。,游标本质上是系统为用户开设的一个数据缓冲区,用以存放SQL语句的结果数据集。每个游标区都有一个名字。用户可以通过游标逐一读取数据记录,然后赋值给主变量,再交由主语言程序作进一步的处理。利用游标概念提供上述协调机制的基本方法是在嵌入式SQL中增加一组游标(cursor)语句。,游标语句游标定义语句有为某一种语句的结果定义一个命名的游标。其语句为:EXEC SQL DECLARE CURSOR映像语句,游标打开语句游标定义后再使用时需要打开游标,此时游标处于活动状态并指向集合的第一个记录。其一般形式为:EXEC SQL OPEN 游标关闭语句游标使用完后需要关

42、闭。其一般形式为:EXEC SQL CLOSE,游标推进语句该语句读出当前记录,并将游标推向集合中的下一个记录,此语句常用于循环,其一般形式为:EXEC SQL FETCH,例:查询DEPT变量中给出的某个系的全体学生的信息。EXEC SQL DECLARE SX CURSOR FOR SELECT S#,Sn,Sa FROM S WHERE Sd=:DEPT;EXEC SQL OPEN SX;DO WHILE EXEC SQL FETCH SX;INTO S#,SNAME,AGE.END;EXEC SQL CLOSE SX;,作业:课本习题3的:2,13,Elelen Enmi胶原蛋白口服液买四赠一 品牌正品情侣装 亲子装全场包邮 淘宝:http:/或者拍拍:http:/,本章小结,简单查询:选择条件、排序输出、聚合运算以及分组处理。连接查询:查询的并、交、差;连接与笛卡尔积;元组变量。嵌套查询:产生单值的子查询;涉及到关系的选择条件;涉及到元组的选择条件;相关子查询。数据库更新:插入、删除、修改。定义关系模式:定义表、撤消表;更改关系模式;建立和撤消索引。视图:定义视图、查询视图、更新视图、撤消视图。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号