《ACCESS CH5复习重点.doc》由会员分享,可在线阅读,更多相关《ACCESS CH5复习重点.doc(5页珍藏版)》请在金锄头文库上搜索。
1、5.1 关系运算关系运算又可分为两类。一类是传统的关系运算,包括并、差、交、笛卡儿积;另一类是专门的关系运算,包括选择、投影和连接。(选择,针对一个关系进行的行的分解;投影,针对一个关系进行列的分解;连接,将两个关系的属性名通过笛卡儿积拼接成一个更宽的关系)并(Union)运算:设R和S是n元关系,且两者对应属性的数据类型相同。定义R和S的并运算为 R S = t | t R t S 代表或者的含义即:或属于关系R、或属于关系S的记录的集合。差(Difference)运算:设R和S是n元关系,且两者对应属性的数据类型相同。定义R和S的差运算为 R S = t | t R t S 代表并且的含义
2、即:属于关系R、但不属于关系S的记录的集合。交(Intersection)运算:设R和S是n元关系,且两者对应属性的数据类型相同。定义R和S的交运算为 R S = t | t R t S = R ( R S )即:既属于关系R、又属于关系S的记录的集合。并、差、交运算的前提:关系R和关系S有相同的属性结构。笛卡尔积(Cartesian Product)运算:设R是一个n元关系,S是一个m元关系,定义R和S的笛卡尔积运算为RS=(r1,r2,rn,s1,s2,sm)|(r1,r2,rn)R (s1,s2,sm)S选择(Selection):设R是一个n元关系,F是一个形如ric的公式,其中 =,
3、,ric表示属性值ri和指定值c的比较关系(实际上隐含着一个条件,称为关系运算符)。定义R的选择运算为 F(R) = (r1,r2,ri,rn) | (r1,r2,ri,rn) R ric 即:在关系R中选择某一属性值满足一定条件(与指定值的比较关系成立)的记录。选择运算是对单个关系进行水平分解,是从行的角度进行的运算。选择运算中的条件可以是多个简单条件的逻辑组合。投影(Projection):设R是一个n元关系,定义R的投影运算为i1,i2,im(R) = (ri1,ri2,rim) | (r1,r2,ri1,ri2,rim,rn) R 其中i1,i2,im表示所选取属性列的编号,且m ,。
4、定义R和S的连接(Jion)运算为 RAB S = rs | rR sS (rA sB) 其中,rA表示元组r在属性A上的值,sB表示元组s在属性B上的值。r=(r1,r2, rA, , rn),s=(s1,s2, sB, sm),rs形如(r1,r2, rA, , rn, s1,s2, sB, sm)。并称A和B是连接属性。性质:不一定具有相同的名称,但具有相同的数据类型、相同的业务含义和相同的取值范围需要特别注意的是,等值连接与一对多表间关系有着密切的联系:一对多表间关系为等值连接运算提供了基础,通过一对多表间关系中的关联字段可以进行等值连接运算。实际上,等值连接运算中的连接属性就是一对多
5、表间关系中的关联字段。若在等值连接的结果关系中去掉重复的属性,或者说,连接属性在结果关系中只出现一次,则此连接称为自然连接中小结 关系运算是对关系进行的闭合运算,因此,运算对象是关系,并且运算的结果仍为关系。 并、差、交、笛卡儿积为二元关系运算,即是对两个关系进行的运算,并且并、差、交运算要求两个关系的对应属性有相同的含义和数据类型。 选择、投影为一元关系运算,即对单个关系进行的运算;选择运算是从行的角度进行的运算,投影运算是从列的角度进行的运算。 连接为二元关系运算,其中的两个关系是通过连接属性完成运算的,且连接属性必须有相同的数据类型并表示相同的含义。在关系数据库中,等值连接运算是最常见的
6、连接运算。 在RDBMS中,数据查询功能就是通过选择、投影和等值连接运算完成的。换句话说,从数据库中的若干表提取所需要的数据,都要借助于选择、投影和等值连接运算才能实现。在Access数据库中,“查询”对象中主要体现和包含了关系的选择、投影和等值连接运算。5.2 查询的设计与创建在Access数据库中,大部分查询可以使用数据查询语言(Data Query Language,DQL)中的SELECT命令来实现数据查询功能。 SELECT命令的基本语法格式为SELECT 字段名1,字段名2FROM 表名WHERE 条件表达式GROUP BY 字段列表ODRDE BY 字段名 ASC|DESC选择运
7、算 Sex=“女”(Student) = t | t Student t.Sex=“女”SELECT命令: SELECT StudentID, Name, Sex, Birthday, Score FROM Student WHERE Sex=“女”投影运算StudentID, Name, Sex (Student) SELECT命令: SELECT StudentID, Name, Sex FROM Student查询对象有五种视图1设计视图:用于创建新的查询对象,或者修改已有的查询对象;2数据表视图:可以以二维表的形式显示查询结果;3SQL视图:用于查看查询对象所对应的SELECT命令,该
8、命令属于SQL语句;4数据透视表视图:以表格形式对查询结果进行进一步的多维分析;5数据透视图视图:以图形方式显示、对比查询结果。创建查询有两种方法:1在设计视图中创建查询;2使用向导创建查询。在设计视图中创建查询条件的常见办法有:1检索字段值为指定常量。例如,如果只查询“产品名称”为“鸭肉”的产品记录,只需要在“产品名称”字段下方对应的“条件”单元格中输入“鸭肉”即可。2检索字段值介于指定值之间的记录,即通过使用 Between.And 运算符或比较运算符(=、=)来创建条件表达式 含义234大于234的数10不等于10的数Between 1 And 10 1到10的数值(包括1和10)Bet
9、ween #1996-1-1# And #1996-12-31# 日期由1996-1-1到1996-12-313使用通配符和Like运算符检索部分或完全匹配的内容。所谓通配符(Wildcard Character),就是可用于替代一个或多个字符的特殊键盘字符。常见的通配符如下表所示。4检索指定值范围以外的记录。例如,可以在“客户ID”字段对应的“条件”单元格中输入 Not Like “A*”,以查找“客户ID”不是以字母A开头的客户记录。5用In运算符检索包括值列表中一个值的记录。例如,在“供应商”表中查找北京、上海或沈阳等城市的供应商记录,可以在“城市”字段对应的“条件”单元格中输入下列表达
10、式:In (北京,上海,沈阳)。6构造复合的条件。当需要检索必须同时满足多个条件的数据时,可以使用And逻辑运算符将这些条件连接起来;当需要检索只需符合多个条件之一的数据时,则可以使用Or逻辑运算符将这些条件连接起来。5.3 选择查询在Access数据库中,根据对数据来源的操作方式以及对查询结果组织形式的不同,可以将查询分为选择查询、交叉表查询、操作查询、参数查询和SQL查询五大类。根据所处理数据的类型不同,可以将Access内置函数划分为算术函数、文本函数、日期/时间函数等。每种函数只能处理特定类型的数据。 函数类型函数形式用法说明算术函数Abs(number_exp)返回数值表达式numb
11、er_exp值的绝对值。Int(number_exp)返回将数值表达式number_exp值向下取整到最接近的整数,即不大于数值表达式值的最大整数。Sqr(number_exp)返回数值表达式number_exp值的平方根。Sgn(number_exp)返回数值表达式number_exp值的符号值。即当数值表达式的值大于0时,返回值为1;当数值表达式的值等于0时,返回值为0;当数值表达式的值小于0时,返回值为-1。文本函数Left(text,num_chars)返回文本串text中的第一个或前几个字符。例如,Left(database,4)的返回值为data。Right(text,num_ch
12、ars)返回文本串text中最后一个或多个字符。例如,Right(数据库管理系统,2)的返回值为系统。注意:一个汉字相当于一个字符。Mid(text,num_chars_1,num_chars_2)返回文本串text中从第num_chars_1开始的连续的num_chars_2个字符。例如,Mid(Database Management System,10,10)的返回值为Management。注意:一个空格也算一个字符。Trim(text)除了中间的空格外,清除文本串两端的所有空格。例如,Trim( RDBMS is useful! )的返回值为RDBMS is useful!。日期/时间函
13、数Day(date)返回日期型数据date的号数,表示给定日期date是一个月当中的哪一天。Month(date)返回日期型数据date的月数,表示给定日期date是一年当中的哪个月。Year(date)返回日期型数据date的年数,表示给定日期date是哪一年。DatePart(interval,date)返回日期型数据date的对应数值。参数interval是要返回的日期部分的缩写,有效的缩写示例为:yyyy表示四位数字格式的年份,q表示季度,m表示月份。例如,DatePart(yyyy,#2008-8-8#)返回2008(相当于Year(#2008-8-8#)),DatePart(q,#
14、2008-8-8#)返回3,DatePart(m,#2008-8-8#)返回8(相当于Month(#2008-8-8#))。5.4 交叉表查询5.5 操作查询操作查询有生成表查询、更新查询、追加查询和删除查询等四种类型5.6 参数查询5.7 SQL查询SQL查询可分为以下四类:联合查询、子查询、数据定义查询和传递查询在数据定义查询中,可以使用以下数据定义语句:1. CREATE TABLE,创建表。2. ALTER TABLE,在已有表中添加新字段或约束,也可以删除已有字段(及该字段上的数据)。3. DROP TABLE,从数据库中删除表。5.8 结构化查询语言SQL可用于控制RDBMS提供给用户的所有功能,包括:数据定义(Data Definition):SQL可用于定义被存放数据的结构和组织,以及数据项之间的关系。数据查询/检索(Data Query/Retrieval):SQL能使用户或应用程序从数据库中检索数据并使用这些数据。数据操纵(D