2023年数据库系统概论--第四版-知识点总结归纳整理.pdf

上传人:H****o 文档编号:90944747 上传时间:2023-05-18 格式:PDF 页数:31 大小:2.33MB
返回 下载 相关 举报
2023年数据库系统概论--第四版-知识点总结归纳整理.pdf_第1页
第1页 / 共31页
2023年数据库系统概论--第四版-知识点总结归纳整理.pdf_第2页
第2页 / 共31页
点击查看更多>>
资源描述

《2023年数据库系统概论--第四版-知识点总结归纳整理.pdf》由会员分享,可在线阅读,更多相关《2023年数据库系统概论--第四版-知识点总结归纳整理.pdf(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、学习必备 精品知识点 第一章:绪论 1、数据库系统相关概念 1、数据:描述事物的符号记录,包括数据的表现形式和数据解释两个部分。如数字、音频、图形、文本、图像、语言、视频等多种表现形式。经过数字化处理后存入计算机。数据是信息的符号表示或载体。信息是数据的内涵是对数据的语义解释。2、数据库(DB):长期存储在计算机内、有组织、可共享的大量数据的集合。数据库中的数据按照一定的数据模型组织、描述和存储,具有娇小的冗余度、交稿的数据独立性和易扩展性,并可为各种用户共享。3、数据库管理系统(DBMS):位于用户和操作系统间的数据管理系统的一层数据管理软件。用途:科学地组织和存储数据,高效地获取和维护数据

2、。包括数据定义功能,数据组织、存储和管理,数据库的事物管理和运行管理,数据库的建立和维护功能,其他功能。4、数据库系统(DBS):在计算机系统中引入数据库后的系统,一般由数据库。数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。目的:存储信息并支持用户检索和更新所需的信息。2、数据模型概念,作用及其 3 要素 模型:对现实世界中某个对象特征的模拟和抽象。数据模型:是数据库中用来对现实世界数据特征的抽象的工具,是数据库中用于提供信息表示和操作手段的形式架构。三要素:(1)数据结构:是所研究的对象类型的集合,是对系统静态特性的描述。(2)数据操作:对数据库中各种对象(型)的实例(值)所允

3、许进行的操作的集合,包括操作及有关的操作规则,是对系统动态特性的描述。(3)数据的约束条件:是完整性规则的集合。完整性规则是给订的数据库模型中数据及其联系所具有的制约和依存规则,用一限定符合数据模型的数据库状态及其变化,以保证数据库的正确、有效、相容。3、概念模型的作用?概念模型实际上是显示世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流所试用的语言。4、概念模型中 ER 图的设计 E-R图(实体联系方法)提供了表示实体型、属性和联系的方法:实体型:用矩形表示,矩形框内写明实

4、体名。属性:用椭圆形表示,并用无向边将其与相应的实体型连接起来。5、数据库系统三级模式结构和二级映像功能,这种结构的优点?三级模式结构:(1)模式:(逻辑模式)数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。一个数据库只有一个模式。模式的地位:是数据库系统模式结构的中间层,与数据的物理存储细节和硬件环境无关,与具体的应用程序、开发工具及高级程序设计语言无关。学习必备 精品知识点 模式定义的内容:数据的逻辑结构(数据项的名字、类型、取值范围等),数据之间的联系,数据有关的安全性、完整性要求(2)外模式:(子模式/用户模式)数据库用户(包括应用程序员和最终用户)能够看见和使用的局

5、部数据库和逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的系统的逻辑表示。一个数据库可以有多个外模式。外模式的地位:介于模式与应用之间 模式与外模式的关系:一对多。外模式通常是模式的子集。一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求。对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同。外模式与应用的关系:一对多。同一外模式也可以为某一用户的多个应用系统所使用 但一个应用程序只能使用一个外模式(3)内模式:存储模式或内视图)是数据物理结构和存储方式的描述,是数据在数据库内部实际存储的表示方式:记录的存储方式(顺序,B

6、树,hash 方法存储),索引的组织方式,数据是否压缩存储,数据是否加密。数据存储记录结构的规定,一个数据库只有一个内模式 三级模式的优点:(1)保证数据的独立性(内模式与模式分开物理独立;外模式与模式分开逻辑独立)(2)简化用户窗口 (3)有利于数据共享 (4)利于数据的安全保密(5)数据存储由 DBMS 管理(用户不用考虑存取路径等细节)二级映像功能:(1)外模式/模式映像(应用可扩充性)定义外模式(局部逻辑结构)与模式(全局逻辑结构)之间的对应关系,映象定义通常包含在各自外模式的描述中,每一个外模式,数据库系统都有一个外模式模式映象。用途:保证数据的逻辑独立性 当模式改变时,数据库管理员

7、修改有关的外模式模式映象,使外模式保持不变 应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。(2)模式/内模式映像(空间利用率,存取效率)模式/内模式映像是唯一的,它定义了数据全局逻辑结构与存储结构之间的对应关。数据库中模式内模式映象是唯一的。该映象定义通常包含在模式描述中。体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 用途:保证数据的物理独立性 当数据库的存储结构改变了(例

8、如选用了另一种存储结构),数据库管理员修改模式内模式映象,使模式保持不变。应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。优点:(1)保证了数据库外模式的稳定性。(2)从底层保证了应用程序的稳定性,除非应用需求本身发生变化,否则应用程序一般不需要修改。(3)数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去。6、什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?1、数据与程序的逻辑独立性:当模式改变时,数据库管理员修改有关的外模式模式映象,使外模式保持不变。从而应用程序不必修改,保证了数据与程序的逻辑独立

9、性,简称数据的逻辑独立性。2、数据与程序的物理独立性:当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式内模式映象,使模式保持不变。应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间错提供的二层影响保证了数据系统中的数据具有较高的逻辑独立性和物理独立性。第二章:关系数据库 1、关系模型的 3 个组成部分及各部分所包括的主要内容。1、关系数据结构:描述现实世界的实体以及实体间的各种联系。只包含单一的数据结构关系。2、关系操作 查询操作:选择、投影、连接、除、并、差、交、笛卡尔积等。插入、删除、修改操作。3、关系的完整性约束

10、实体完整性和参照完整性:关系模型必须满足的完整性约束条件称为关系的两个不变性,应该由关系系统自动支持。用户定义的完整性:应用领域需要遵循的约束条件,体现了具体领域中的语义约束。2、关系数据结构的形式化定义(各术语)域:一组具有想通数据类型的值的集合。(用 D 表示)域中所包含的值的个数称为域的基数(用 m 表示)。例:整数、实数等。笛卡尔积:域上面的一个集合运算。给定一组域 D1,D2Dn(可以是相同的域)D1,D2Dn 的笛卡尔积为:D1D2Dn (d1,d2dn),i1,2,n所有域的所有取值(n 元有序组)的一个组合。有序组的取值不能完全重复。元组(Tuple):笛卡尔积中每一个元素(d

11、1,d2,dn)叫作一个 n 元组(n-tuple)或简称元组(Tuple)(张清玫,计算机专业,李勇)、(张清玫,计算机专业,刘晨)等都是元组。分量(Component):笛卡尔积元素(d1,d2,dn)中的每一个值 di 叫作一个分量。体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 张清玫、计算机专业、李勇、刘晨等都是分量。基数(Cardinal number):若 Di(i1,2,n)为有限集,Di 中的集合元素个数称为 Di 的

12、基数,用 mi(i1,2,n)表示,则 D1D2Dn 的基数 M(即元素的个数)为为所有域的基数的累乘之积。例:A=a,b B=1,2,0 A 与 B 的笛卡尔积=,B 与 A 的笛卡尔积=,期中等都是元祖,a、b、0、1、2 都是分量,基数 M=2*3=6,一共有六个元组。关系:是笛卡尔积的有限子集,无限关系在数据库系统中是无意义的。D1D2Dn 的子集叫作在域 D1,D2,Dn 上的 n 元关系,表示为 R(D1,D2,Dn)R:关系名 n:关系的目或度(Degree)(1)元组:关系中的每个元素是关系中的元组,通常用 t 表示。(2)单元关系与二元关系:当 n=1 时,称该关系为单元关系

13、(Unary relation)或一元关系;当 n=2 时,称该关系为二元关系(Binary relation)(3)关系的表示:关系也是二维表,表的每行对应一个元组,表的每列对应一个域。(4)属性:由于笛卡尔积不满足交换律,即(d1,d2,dn)(d2,d1,dn)但关系满足交换律,即(d1,d2,di,dj,dn)=(d1,d2,dj,di,dn)(i,j=1,2,n)解决方法:为关系的每个列附加一个属性名以取消关系元组的有序性;关系中不同列可以对应相同的域;为了加以区分,必须对每列起一个名字,称为属性(Attribute);n 目关系必有 n 个属性。(5)码:候选码:若关系中的某一属性

14、组的值能唯一地标识一个元组,则称该属性组为候选码。主属性:候选码的诸属性称为主属性,不包含在任何侯选码中的属性称为非主属性或非码属性。超码:关系中能唯一标识元组的属性集,超码的任意超级仍是超码 候选码:任意真子集都不能成为超码的“最小”超码,即在候选码中,若要再删除属性,就不是超码了。3、外码,主码,候选码的概念 候选码:若关系中的某一属性组的职能唯一地标识一个元组,则称该属性组为候选码。主码:若一个关系有多个候选码,则选定期中一个为主码。外部码:设 F 是基本关系 R 的一个或一组属性。但不是关系 R 的码,如果 F 与基本关系 S 的主码 K 想对应,则称 F 是基本关系 R 的外部码,简

15、称外码。4、关系的 3 类完整性约束概念 实体完整性:若属性(指一个或一组属性)A 是基本关系 R 的主属性,A 不能取空值。参照完整性:若属性(或属性组)F 是基本关系 R 的外码,它是基本关系 S 的主码 K相对应(基本关系 R 和 S 不一定是不同的关系),则对于 R 中每个元组在 F 上的值必须为:体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 或者取空值(F 的每个属性值均为空值);或者等于 S 中某个元组的主码值。用户定义的

16、完整性:针对某一具体关系数据库的约束条件。反映某一具体应用所设计的数据必须满足的语义要求。5、关系操作的特点,关系代数中的各种运算 关系操作的特点是集合操作方式,即操作的对象和结果是集合。关系代数:1、并(RS)仍为 n 目关系,由属于 R 或属于 S 的元组组成。RS=2、差(R S)仍为 n 目关系,由属于 R 而不属于 S 的所有元组组成。R-3、交(RS)仍为 n 目关系,由既属于 R 又属于 S 的元组组成。R RS=R(R-S)4、笛卡尔积 R:n 目关系,k1 个元组;S:m 目关系,k2 个元组;R S。5、R,t R,tAi 设关系模式为 R(A1,A2,An),它的一个关系

17、设为 R,t R 表示 t 是 R 的一个元组,tAi则表示元组 t 中相应于属性 Ai 的一个分量。6、A,tA,A 若 A=Ai1,Ai2,Aik,其中 Ai1,Ai2,Aik 是 A1,A2,An 中的一部分,则 A 称为属性列或属性组;tA=(tAi1,tAi2,tAik)表示元组 t 在属性列 A 上诸分量的集合;A 则表示A1,A2,An中去掉Ai1,Ai2,Aik 后剩余的属性组。7、tr ts R 为 n 目关系,S 为 m 目关系。tr R,ts S,tr ts 称为元组的连接。tr ts 是一个 n+m列的元组,前 n 个分量为 R 中的一个 n 元组,后 m 个分量为 S

18、 中的一个 m 元组。8、象集 Zx 给定一个关系 R(X,Z),X 和 Z 为属性组。当 tX=x 时,x 在 R 中的象集(Images Set)为:,tX=x。它表示 R 中属性组 X 上的分量值为 x 的诸元组在 Z 上分量的集合 9、选择:选择又称为限制(Restriction):对元组按照条件进行筛选。在关系 R 中选择满足给定条件的诸元组F(R)=t|t RF(t)=真。10、投影:投影运算符的含义:从 R 中选择出若干属性列组成新的关系 A(R)=tA 体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统

19、在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点|t A:R 中的属性列 投影操作主要是从列的角度进行运算。但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)。11、连接:连接也称为连接:两张表中的元组有条件的串接。从两个关系的笛卡尔积中选取属性间满足一定条件的元组 R trAtsB A 和 B:分别为 R 和 S 上度数相等且可比的属性组 :比较运算符 连接运算从 R 和 S 的广义笛卡尔积 RS 中选取(R 关系)在 A 属性组上的值与(S 关系)在 B 属性组上值满足比较关系的元组。等值连接:为“”的连接运算称为等值连接。从关系 R

20、与 S 的广义笛卡尔积中选取 A、B 属性值相等的那些元组,即等值连接为:R S=tr ts|tr Rts StrA=tsB 自然连接是一种特殊的等值连接:两个关系中进行比较的分量必须是相同的属性组,在结果中把重复的属性列去掉。自然连接的含义:R 和 S 具有相同的属性组 B。RtrB=tsB 外连接:如果把舍弃的元组也保存在结果关系中,而在其他属性上填空值(Null),这种连接就叫做外连接。左外连接:如果只把左边关系 R 中要舍弃的元组保留就叫做左外连接(LEFT OUTER JOIN 或 LEFT JOIN)。右外连接:如果只把右边关系 S 中要舍弃的元组保留就叫做右外连接(RIGHT O

21、UTER JOIN 或 RIGHT JOIN)。12、除:给定关系 R(X,Y)和 S(Y,Z),其中 X,Y,Z 为属性组;R 中的 Y 与 S 中的 Y 可以有不同的属性名,但必须出自相同的域集;R 与 S 的除运算得到一个新的关系P(X),P 是 R 中满足下列条件的元组在 X 属性列上的投影:(若)元组在 X 上分量值 x 的象集 Yx 包含 S 在 Y 上投影的集合,记作:Yx:x 在 R 中的象集,x=trX 第三章:关系数据库标准语言 SQL 1、SQL 语言的特点 1、综合统一。2、高度非过程化。3、面向集合的操作方式。4、以同一种语法结构提供多种使用方式 5、语言简洁、易学易

22、用。2、SQL 语言的数据查询,数据定义,数据操纵功能,这些分别有哪些 SQL 语句?1、数据定义:定义数据库中的基本对象、模式(架构)定义、表定义、视图和索引。体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 注意:SQL(Oracle 除外)一般不提供修改视图定义和索引定义的操作,需要先删除再重建(1)模式:定义模式:CREATE SCHEMA AUTHORIZATION|例:CREATE SCHEMA TEST AUTHORIZAT

23、ION ZHANG CREATE TABLE TAB1(COL1 SMALLINT,COL2 INT,COL3 CHAR(20),COL4 NUMERIC(10,3),COL5 DECIMAL(5,2);为用户 ZHANG 创建了一个模式 TEST,并在其中定义了一个表 TAB1。删除模式:DROP SCHEMA CASCADE(级联):删除模式的同时把该模式中所有的数据库对象全部删除 RESTRICT(限制);没有任何下属的对象时 才能执行。(2)表:定义基本表:CREATE TABLE (,);列级完整性约束-涉及到该表的一个属性 NOT NULL:非空值约束 UNIQUE:唯一性(单值约

24、束)约束 PRIMARY KEY:主码约束 DEFAULT:默认(缺省)约束 Check:核查约束,定义校验条件 NOT NULL:非空值约束 UNIQUE:唯一性(单值约束)约束 PRIMARY KEY:主码约束 DEFAULT:默认(缺省)约束 Check:核查约束,定义校验条件 表级完整性约束-涉及到该表的一个或多个属性。UNIQUE(属性列列表):限定各列取值唯一 PRIMARY KEY(属性列列表):指定主码 FOREIGN KEY(属性列列表)REFERENCES (属性列列表)Check():检查约束 PRIMARY KEY 与 UNIQUE 的区别?例:建立“学生”表 Stud

25、ent,学号是主码,姓名取值唯一 CREATE TABLE Student (Sno CHAR(9)PRIMARY KEY,/*主码*/体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 Sname CHAR(20)UNIQUE,/*Sname 取唯一值*/Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20);数据类型 修改基本表:ALTER TABLE ADD 完整性约束 DROP|ALTER COLUMN

26、;例:向 Student 表增加“入学时间”列,其数据类型为日期型 ALTER TABLE Student ADD S_entrance DATE;不论基本表中原来是否已有数据,新增加的列一律为空值 将年龄的数据类型由字符型(假设原来的数据类型是字符型)改为整数 ALTER TABLE Student ALTER COLUMN Sage INT;注:修改原有的列定义有可能会破坏已有数据 增加课程名称必须取唯一值的约束条件。ALTER TABLE Course ADD UNIQUE(Cname);直接删除属性列:(新标准)例:ALTER TABLE Student Drop Sage;删除基本表

27、:DROP TABLE RESTRICT|CASCADE;RESTRICT:(受限)欲删除的基本表不能被其他表的约束所引用,如果存在依赖该表的对象(触发器,视图等),则此表不能被删除。CASCADE:(级联)在删除基本表的同时,相关的依赖对象一起删除。例:删除 Student 表 DROP TABLE Student CASCADE;基本表定义被删除,数据被删除;表上建立的索引、视图、触发器等一般也将被删除。体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学

28、习必备 精品知识点 (3)索引:建立索引的目的:加快查询速度。DBA 或 表的属主(即建立表的人)(显式);DBMS 一般会自动建立以下约束列上的索引(隐式)PRIMARY KEY UNIQUE 建立索引。CREATE UNIQUE CLUSTER INDEX ON (,);用指定索引值的排列次序,升序:ASC,降序:DESC。默认:ASC。UNIQUE 表明此索引的每一个索引值只对应唯一的数据记录 CLUSTER 表示要建立的索引是聚簇索引。索引项顺序与表中记录的物理顺序一致。聚簇索引 CLUSTER 例:CREATE CLUSTER INDEX Stusname ON Student(Sn

29、ame);在 Student 表的 Sname(姓名)列上建立一个聚簇索引,而 且 Student 表中的记录将按照 Sname 值的升序存放。一个基本表上最多只能建立一个聚簇索引;在最经常查询的列上建立聚簇索引以提高查询效率;经常更新的列不宜建立聚簇索引。唯一值索引 UNIQUE 例:为学生-课程数据库中的 Student,Course,SC 三个表建 立索引 CREATE UNIQUE INDEX SCno ON SC(Sno ASC,Cno DESC);对于已含重复值的属性列不能建 UNIQUE 索引。对某个列建立 UNIQUE 索引后,插入新记录时 DBMS 会自动检查新记录在该列上是

30、否取了重复值。这相当于增加了一个 UNIQUE约束。删除索引:DROP INDEX;删除索引时,系统会从数据字典中删去有关该索引的描述。例:删除 Student 表的 Stusname 索引:DROP INDEX Stusname 2、数据查询:基本格式 Select A1,A2,An From R1,R2,.,Rm Where F 体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 (1)单表查询 选择表中的若干列(投影)查询指定列(相当

31、于A(R),A=A1,A2,An)例;查询全体学生的学号与姓名 SELECT Sno,Sname FROM Student;选出所有属性列:在 SELECT 关键字后面列出所有列名按用户指定顺序显示。将指定为*按关系模式中的属性顺序显示。例:查询全体学生的详细记录 SELECT Sno,Sname,Ssex,Sdept,Sage FROM Student;或 SELECT *FROM Student;P.S:SELECT 子句的可以为:算术表达式:例:查全体学生的姓名及其出生年份 SELECT Sname,2011-Sage /*假定当年的年份为 2011 年*/FROM Student;输出

32、结果:Sname 2011-Sage 李勇 1991 刘晨 1992 字符串常量、函数 例:查询全体学生的姓名、出生年份和所有系,要求用小写字母 表示所有系名 SELECT Sname,Year of Birth:,2004-Sage,ISLOWER(Sdept)FROM Student;输出结果:Sname Year of Birth:2004-Sage ISLOWER(Sdept)李勇 Year of Birth:1984 cs 体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般

33、由数据库数据库管理系统及学习必备 精品知识点 刘晨 Year of Birth:1985 is 列别名 SELECT Sname as NAME,Year of Birth:as BIRTH,2011-Sage as BIRTHDAY,LOWER(Sdept)as DEPARTMENT FROM Student;输出结果:NAME BIRTH BIRTHDAY DEPARTMENT -李勇 Year of Birth:1991 cs 刘晨 Year of Birth:1992 is 选择表中的若干元组(选择)消除重复性:指定 DISTINCT 关键词,去掉表中重复的行 SELECT DISTI

34、NCT Sno FROM SC;注意 DISTINCT 短语的作用范围是所有目标列 错误的写法 SELECT DISTINCT Cno,DISTINCT Grade FROM SC;正确的写法 SELECT DISTINCT Cno,Grade FROM SC;SELECT 子句缺省情况是保留重复元组(ALL),例:查询选修了课程的学生学号。SELECT Sno FROM SC;等价于:SELECT ALL Sno FROM SC;WHERE 子句常用的查询条件(相当于F)使用比较运算符 或逻辑运算符 NOT +比较运算符 例:查询计算机科学系全体学生的名单 SELECT Sname FROM

35、 Student WHERE Sdept=CS;例:查询所有年龄在 20 岁以下的学生姓名及其年龄 SELECT Sname,Sage FROM Student WHERE Sage=20 谓词:BETWEEN AND NOT BET WEEN AND 例;查询年龄在 2023 岁(包括 20 岁和 23 岁)之间的学生的姓名、系别和年龄 SELECT Sname,Sdept,Sage FROM Student WHERE Sage BETWEEN 20 AND 23;/Sage=20 and Sage=23 体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系

36、统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 例:查询年龄不在 2023 岁之间的学生姓名、系别和年龄 SELECT Sname,Sdept,Sage FROM Student WHERE Sage NOT BETWEEN 20 AND 23;/Sage23 IN,NOT IN 例:查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别 SELECT Sname,Ssex FROM Student WHERE Sdept IN(IS,MA,CS);例:查询既不是信息系、数学系,也不是计算机科学系的学

37、生的姓名和性别 SELECT Sname,Ssex FROM Student WHERE Sdept NOT IN(IS,MA,CS);NOT LIKE ESCAPE 匹配串为固定字符串 例:查询学号为 200215121 的学生的详细情况。SELECT*SELECT *FROM Student 等价于:FROM Student WHERE Sno LIKE 200215121;WHERE Sno=200215121;匹配串为含通配符的字符串%:代表任意长度(可以是 0)的字符串 _:代表任意单个字符 字符串本身就含有%或 _ 时,在%或 _ 之前加上转义符“”要使用 ESCAPE 将通配符转

38、义为普通字符。如果 要作为一个普通字符,用连续两个 表示一个真正的。例:查询以DB_开头,且倒数第 3 个字符为 i 的课程的详细情况。SELECT *FROM Course WHERE Cname LIKE DB_%i_ _ ESCAPE ;IS NULL 或 IS NOT NULL “IS”不能用“=”代替 例:查所有有成绩的学生学号和课程号 SELECT Sno,Cno FROM SC WHERE Grade IS NOT NULL;逻辑运算符:AND 和 OR 来联结多个查询条件,AND 的优先级高于 OR,可以用括号改变优先级,可用来实现多种其他谓词。NOT IN NOT BETWE

39、EN AND 改写 例:查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别 SELECT Sname,Ssex FROM Student WHERE Sdept IN(IS,MA,CS)可改写为:SELECT Sname,Ssex 体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 FROM Student WHERE Sdept=IS OR Sdept=MA OR Sdept=CS ORDER BY 子句:对查询结果

40、排序 可以按一个或多个属性列排序:升序:ASC;降序:DESC;缺省值为升序。当排序列含空值时:空值最大 ASC:排序列为空值的元组最后显示;DESC:排序列为空值的元组最先显示。例:查询选修了 3 号课程的学生的学号及其成绩,查询结果按分数降序排列 SELECT Sno,Grade FROM SC WHERE Cno=3 ORDER BY Grade DESC;聚集函数:对查询结果集中的某列进行计算或统计。计数 COUNT(DISTINCT|ALL*)COUNT(DISTINCT|ALL)计算总和 SUM(DISTINCT|ALL)计算平均值 AVG(DISTINCT|ALL)最大最小值 M

41、AX(DISTINCT|ALL)MIN(DISTINCT|ALL)例:查询学生 200215012 选修课程的总学分数 SELECT SUM(Ccredit)FROM SC,Course WHER Sno=200215012 AND SC.Cno=Course.Cno;注:除 Count(*),都要跳过空值;Where 子句不能使用聚集函数。GROUP BY 子句:对查询结果分组。用途细化聚集函数的作用对象 未对查询结果分组,聚集函数将作用于整个查询结果 对查询结果分组后,聚集函数将分别作用于每个组 使用 GROUP BY 后:其 SELECT 子句的列名列表中只能出现分组属性和集函数。如果分

42、组后还要按照条件对这些组进行筛选,可使用 having 短语指定筛选条件 例:查询选修了 3 门以上课程的学生学号 SELECT Sno FROM SC GROUP BY Sno HAVING COUNT(*)3;例:查询有 3 门以上课程是 90 分以上学生的学号及(90 分以上的)课程数 SELECT Sno,COUNT(*)FROM SC Where Grade 90 GROUP BY Sno HAVING COUNT(*)3;HAVING 短语与 WHERE 子句的区别:作用对象不同 WHERE 子句作用于基表或视图,从中选择满足条件的元组 体信息是数据的内涵是对数据的语义解释数据库长

43、期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 HAVING 短语作用于组,从中选择满足条件的组。3、数据更新(1)插入数据 插入元组 INSERT INTO (,)VALUES(,)功能:将新元组插入指定表中;新元组的属性列 1 的值为常量 1,属性列 2 的值为常量 2,。INTO 子句:属性列的顺序可与表定义中的顺序不一致,但须指定列名;没有指定属性列,表示要插入的是一条完整的元组;指定部分属性列,未指定的属性列取空值,具有 NOT NULL 的属性列除外。VALUES 子

44、句:提供的值必须与 INTO 子句匹配,值的个数,值的类型。例:将一个新学生元组(学号:200215128;姓名:陈冬;性别:男;所在系:IS;年龄:18 岁)插入到 Student 表中 INSERT INTO Student(Sno,Sname,Ssex,Sdept,Sage)VALUES(200215128,陈冬,男,IS,18);例:将学生张成民的信息插入到 Student 表中 INSERT INTO Student VALUES(200215126,张成民,男,18,CS);例:插入一条选课记录(200215128,1)。INSERT INTO SC(Sno,Cno)VALUES(

45、200215128 ,1);RDBMS 将在新插入记录的 Grade 列上自动地赋空值。或者:INSERT INTO SC VALUES(200215128 ,1 ,NULL);因为没有指出 SC 的属性名,在 GRADE 列上要明确给出空值(2)修改数据 UPDATE SET =,=WHERE;SET 子句:指定修改方式,要修改的列,修改后取值:。WHERE 子句:指定要修改的元组,缺省表示要修改表中的所有元组。功能:修改指定表中满足 WHERE 子句条件的元组。修改某一个元组的值 例:将学生 200215121 的年龄改为 22 岁 UPDATE Student SET Sage=22 W

46、HERE Sno=200215121;修改多个元组的值 例:将所有学生的年龄增加 1 岁 体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数据库数据库管理系统及学习必备 精品知识点 UPDATE Student SET Sage=Sage+1;带子查询的修改语句 子查询须放在比较运算符之后 例:将计算机科学系全体学生的成绩置零。UPDATE SC SET Grade=0 WHERE CS=(SELETE Sdept FROM Student WHERE Student.Sno=S

47、C.Sno);(3)删除数据 DELETE FROM WHERE;功能:删除指定表中满足 WHERE 子句条件的元组。WHERE 子句:指定要删除的元组;缺省表示要删除表中的全部元组,表的定义仍在数据字典中。删除某一个元组的值 例:删除学号为 200215128 的学生记录 DELETE FROM Student WHERE Sno=200215128;删除多个元组的值 例:删除所有的学生选课记录 DELETE FROM SC;带子查询的删除语句 例:删除计算机科学系所有学生的选课记录 DELETE FROM SC WHERE CS=(SELETE Sdept FROM Student WHE

48、RE Student.Sno=SC.Sno);4、视 图 特点:虚表,是从一个或几个基本表(或视图)导出的表;只存放视图的定义,不存放视图对应的数据;基表中的数据发生变化,从视图中查询出的数据也随之改变。基于视图的操作:查询、删除、受限更新、定义基于该视图的新视图。(1)定义视图 建立视图 CREATE VIEW (,)AS WITH CHECK OPTION;子查询:不允许含有 ORDER BY 子句和 DISTINCT 短语。体信息是数据的内涵是对数据的语义解释数据库长期存储在计算机内有管理系统于用户和操作系统间的数据管理系统的一层数据管理软件用途统在计算机系统中引入数据库后的系统一般由数

49、据库数据库管理系统及学习必备 精品知识点 WITH CHECK OPTION:表示对视图进行 UPDATE,INSERT 和 DELETE 操作时要保证更新、插入或删除的行满足视图定义中的谓词条件(即子查询中的条件表达式)。组成视图的属性列名:全部省略或全部指定,但在下列三种情况下必须明确指定组成视图的所有列名:某个目标列不是单纯的属性名,而是聚集函数或列表达式;多表连接时选出了几个同名列作为视图的字段;需要在视图中为某个列启用新的名字。RDBMS 执行 CREATE VIEW 语句时只是把视图定义存入数据字典,并不执行其中的SELECT 语句。在对视图查询时,按视图的定义从基本表中将数据查出

50、。行列子集视图:从单个基本表导出,只是去掉了基本表的某些行和某些列保留了主码 例:建立信息系学生的视图 CREATE VIEW IS_Student AS SELECT Sno,Sname,Sage FROM Student WHERE Sdept=IS;WITH CHECK OPTION 例:建立信息系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有信息系的学生 CREATE VIEW IS_Student AS SELECT Sno,Sname,Sage FROM Student WHERE Sdept=IS WITH CHECK OPTION;加上了 WITH CHECK OPT

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁