欢迎来到天天文库
浏览记录
ID:37595870
大小:2.03 MB
页数:37页
时间:2019-05-12
《补充关系代数与SQL》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、补充关系代数与SQL一、关系代数1、并(UNION):S1、S2的属性个数相同,且相同属性有相同的值域。2、差(DIFFERENCE):S1、S2的属性个数相同,且相同属性有相同的值域。3、交(INTERSECTION):S1、S2的属性个数相同,且相同属性有相同的值域。4、笛卡尔积(CARTESIANPRODUCT):学生选课关系的列数=学生关系的列数+课程关系的列数5、选择(SELECT)选择运算是从指定关系中选取满足条件的若干元组组成一个新关系,其形式为:SELECT关系名WHERE条件表达式如:SELECTS1WHERE性别=“男”的运算结果为:6、投影(PROJECTION)投
2、影运算是从指定关系中选取指定的若干属性组成一个新关系,其形式为:PROJECT关系名(属性名1,属性名2,…,属性名n)如:PROJECTS1(学生证号,宿舍)的运算结果为:7、连接(JOIN)连接运算是选取两个指定关系中的属性满足给定条件的元组连接在一起组成一个新关系,其形式为:JOIN关系名1AND关系名2WHERE条件如:下图中的R1和R2两个关系按如下运算的结果如下图JOINR1ANDR2WHEREB3、(StructuredQureyLanguage)1、数据定义(1)关系的定义及变更①基本关系定义:CREATETABLE关系名(属性表)例前面的学生选课的三个关模式的定义为:②撤消关系DROPTABLE关系名③修改关系ALTERTABLE关系名例如(2)视图定义与撤消视图定义的目的是从现有基本关系中抽取若干子集组成用户的“专用关系”,视图定义格式为:CREATEVIEW视图名ASSELECT语句示例如下视图撤消语句为:DROPVIEW视图名“4、5、”表示至少选择其中之一内容,也可全选用(3)索引定义与删除CREATE[UNIQUEINDEX索引名ON例如,可定义如下索引:CREATEUN6、IQUEINDEX课程号ON课程删除索引DROPINDEX索引名2、数据查询其基本句型为:SELECT属性名表FROM关系名表WHERE(条件表达式)其应用形式有以下五种使用该词表示索引的属性值具有唯一性按升序建立索引按降序建立索引缺省表示升序可缺省(1)无条件查询(无WHERE子句)(2)条件查询(有WHERE子句)(3)排序查询(在WHERE子句后再跟ORDERBY属性名子句)(4)嵌套查询(在WHERE子句中包含SELECT子句)(5)计算查询(通过系统提供的特定函数在语句中的直接使用而获得某些只有经过计算才能得到的结果)3、数据更新指对数据库的文件进行插入、删除和修改等操作。(17、)数据插入其语句格式为:INSERTINTO关系名(属性名1[属性名2]…)VALUES(属性值1[属性值2]…)(示例)(2)数据删除其语句格式为:DELETEFROM关系名[WHERE条件表达式]例如,删除COURSE中DB课程的命令为:DELETEFROMCOURSEWHERECNAME=‘DB’(3)数据修改其语句格式为:UPDATE关系名SET属性名=属性改变值[WHERE条件表达式](示例)4、数据控制数据控制包括安全性控制、完整性控制、事务性控制和并发控制。(1)安全性控制数据安全性控制的目标是通过对数据库存取权力的控制来防止非法使用数据库中的数据。①权力授与有数据库管理员8、(DBA)专用的授权和用户可用的授权两种形式,前者由格式1标明,后者由格式2标明。②权力撤消有与权力授予对应的也有DBA专用的和用户可使用的两种形式的命令(2)完整性控制(3)事务控制(4)并发控制5、嵌入SQL使用方式SQL有两种使用方式:其一是作为独立语言以交互方式在终端机上使用;其二是嵌入某种主语言中使用。在用主语言和SQL联合编写的应用程序中,主语言往往承担变量定义、对数据的算术与逻辑运算、程序的执行流程控制等职责,而SQL语言则用于对数据库的操作。下面是在主语言和SQL混合编程时应注意的几个问题。(1)SQL语言前加前缀(2)主变量说明(3)数据类型匹配(4)设置位置指针(5)9、错误处理(6)连接到数据库(使用CONNECT语句申请数据库使用权,具体用法见前述安全性控制部分)
3、(StructuredQureyLanguage)1、数据定义(1)关系的定义及变更①基本关系定义:CREATETABLE关系名(属性表)例前面的学生选课的三个关模式的定义为:②撤消关系DROPTABLE关系名③修改关系ALTERTABLE关系名例如(2)视图定义与撤消视图定义的目的是从现有基本关系中抽取若干子集组成用户的“专用关系”,视图定义格式为:CREATEVIEW视图名ASSELECT语句示例如下视图撤消语句为:DROPVIEW视图名“
4、
5、”表示至少选择其中之一内容,也可全选用(3)索引定义与删除CREATE[UNIQUEINDEX索引名ON例如,可定义如下索引:CREATEUN
6、IQUEINDEX课程号ON课程删除索引DROPINDEX索引名2、数据查询其基本句型为:SELECT属性名表FROM关系名表WHERE(条件表达式)其应用形式有以下五种使用该词表示索引的属性值具有唯一性按升序建立索引按降序建立索引缺省表示升序可缺省(1)无条件查询(无WHERE子句)(2)条件查询(有WHERE子句)(3)排序查询(在WHERE子句后再跟ORDERBY属性名子句)(4)嵌套查询(在WHERE子句中包含SELECT子句)(5)计算查询(通过系统提供的特定函数在语句中的直接使用而获得某些只有经过计算才能得到的结果)3、数据更新指对数据库的文件进行插入、删除和修改等操作。(1
7、)数据插入其语句格式为:INSERTINTO关系名(属性名1[属性名2]…)VALUES(属性值1[属性值2]…)(示例)(2)数据删除其语句格式为:DELETEFROM关系名[WHERE条件表达式]例如,删除COURSE中DB课程的命令为:DELETEFROMCOURSEWHERECNAME=‘DB’(3)数据修改其语句格式为:UPDATE关系名SET属性名=属性改变值[WHERE条件表达式](示例)4、数据控制数据控制包括安全性控制、完整性控制、事务性控制和并发控制。(1)安全性控制数据安全性控制的目标是通过对数据库存取权力的控制来防止非法使用数据库中的数据。①权力授与有数据库管理员
8、(DBA)专用的授权和用户可用的授权两种形式,前者由格式1标明,后者由格式2标明。②权力撤消有与权力授予对应的也有DBA专用的和用户可使用的两种形式的命令(2)完整性控制(3)事务控制(4)并发控制5、嵌入SQL使用方式SQL有两种使用方式:其一是作为独立语言以交互方式在终端机上使用;其二是嵌入某种主语言中使用。在用主语言和SQL联合编写的应用程序中,主语言往往承担变量定义、对数据的算术与逻辑运算、程序的执行流程控制等职责,而SQL语言则用于对数据库的操作。下面是在主语言和SQL混合编程时应注意的几个问题。(1)SQL语言前加前缀(2)主变量说明(3)数据类型匹配(4)设置位置指针(5)
9、错误处理(6)连接到数据库(使用CONNECT语句申请数据库使用权,具体用法见前述安全性控制部分)
此文档下载收益归作者所有