Access数据库知识 安丘市职业中专 雷云龙
返回首页 3.1 查询的类型 1. 选择查询 选择查询是最常见的查询类型,它是按照规则从一个或多个表,或其他查询中检索数据,并按照所需的排列顺序显示出来。 2.参数查询 参数查询可以在执行时显示自己的对话框以提示用户输入信息,它不是一种独立的查询,只是在其他查询中设置了可变化的参数。 3.交叉表查询 使用交叉表查询可以计算并重新组织数据的结构,这样可以更加方便地分析数据。。 4. 操作查询 使用操作查询只需进行一次操作,就可对许多记录进行更改和移动。有四种操作查询,如下所示:
返回首页 3.1 查询的类型 ◆删除查询:可以从一个或多个表中删除一组记录。例如,可以使用删除查询来删除所有毕业学生的记录。使用删除查询,通常会删除整个记录,而不只是记录中所选择的字段。 ◆更新查询:可以对一个或多个表中的一组记录做全局的更改。例如,可以将所有学生的语文成绩提高 10 个百分点,或将某一工作类别的人员的工资提高 5 个百分点。使用更新查询,可以更改已有表中的数据。 ◆追加查询:可以将一个或多个表中的一组记录添加到一个或多个表的末尾。例如,假设用户获得了一些新的客户以及包含这些客户信息的数据表。若要避免在自己的数据库中键入所有这些信息的麻烦,最好将其追加到“客户”表中。 ◆生成表查询:可以根据一个或多个表中的的全部或部分数据新建表。生成表查询有助于创建表以导出到其他数据库中。
返回首页 3.1 查询的类型 5. SQL 查询 SQL (Structure Query Language)是一种结构化查询语言,是数据库操作的工业化标准语言。可以使用SQL 来查询、更新和管理任何数据库系统。用户在设计视图中创建查询时,Access 将在后台构造等效的 SQL 语句。有一些 SQL 查询,只能在 SQL 视图中创建,称为“特定查询”,包括: ◆传递查询:传递查询可以直接向 ODBC 数据库服务器发送命令 ◆联合查询:联合查询可使用 Union 运算符来合并两个或更多选择查询结果 ◆数据定义查询。利用数据定义语言 (DDL) 语句,来创建或更改数据库中的对象。
3.2 创建选择查询 3.2.1 创建查询的方式 在Access中创建查询有三种方式: ◆查询向导 ◆设计视图 ◆ SQL视图。 返回首页 3.2 创建选择查询 3.2.1 创建查询的方式 1. 查询设计方式 在Access中创建查询有三种方式: ◆查询向导 ◆设计视图 ◆ SQL视图。 注意:简单的选择查询(包括“查找重复项查询”和“查找不匹配项查询”)、交叉表查询一般使用向导创建查询;SQL查询(SQL程序)在SQL视图中创建;其他查询一般在设计视图中创建。 2. 三种视图 在Access中查询有三种视图: ◆设计视图:在“设计视图”中不仅可以创建各种查询,而且可以编辑已有查询 ◆数据表视图: “数据表视图”显示的是查询结果,是一个动态记录集 ◆ SQL视图。在“SQL视图”中创建SQL查询语句,生成查询程序。 注意:通过选择“视图”菜单中的相应选项(或点击工具栏中的“视图”图标的下拉按钮,在下拉表中选择相应选项),可实现在三种视图间的转换。。
3.2 创建选择查询 3.2.4 查询条件表达式 特殊运算符 ◆ Like :用来指定字符串的样式。如:like “李*”,指姓李的名字。 返回首页 3.2 创建选择查询 3.2.4 查询条件表达式 特殊运算符 ◆ Like :用来指定字符串的样式。如:like “李*”,指姓李的名字。 ◆ In:指定一系列值的列表。如:In(”山东”,”浙江”,”安徽”)。 ◆ Between a1 and a2:指位于a1 和a2之间的值(包括端值),如:Between 75 and 90。 ◆ Null:字段不包括任何数据,为空值。
3.2 创建选择查询 通配符 ◆ ?:代表任意一个字符。 ◆ *:代表任意字符串(0或多个字符); ◆ #:代表单一数字; 返回首页 3.2 创建选择查询 通配符 ◆ ?:代表任意一个字符。 ◆ *:代表任意字符串(0或多个字符); ◆ #:代表单一数字; ◆[字符表]:字符表中的单一字符; ◆[!字符表]:不在字符表中的单一字符; 例:Like c*?:表示以字符C开头的字符串; Like p[b-g]### :表示以字母p开头,后根b~g之间的1个字母和3个数字的字符串; Like f?[a-f][!6-10]* :表示第一个字符为f ,第2个为任意字符,第3个为非6-10的任意字符,其后为任意字符串的字符串。
3.2 创建选择查询 逻辑运算符 逻辑运算符除包括常见的“>、<、=”等外,还包括: 返回首页 3.2 创建选择查询 逻辑运算符 逻辑运算符除包括常见的“>、<、=”等外,还包括: ◆ And:逻辑并,两个条件同时满足。如:>=60 and <=100; ◆ Or:逻辑或,两个条件满足一个即可。如:<60 Or >120; ◆ Not:逻辑否,不属于表达式范围。如:Is Not Null
3.2 创建选择查询 在包含日期的表达式中,将日期型数据的两端加上“#”号(此处不是通配符),以区别于其他数字。 返回首页 3.2 创建选择查询 5. 日期的表达 在包含日期的表达式中,将日期型数据的两端加上“#”号(此处不是通配符),以区别于其他数字。 如:1980年1月2日以后出生的学生,表达式可为:>#1985/1/2# 或>#/1/2/1980#。另外,系统还提供了以下时间函数: ◆ Date():返回系统当前日期; ◆ Year():返回日期中的年份; ◆ Month():返回日期中的月份; ◆ Day():返回日期中的日数; ◆ Weekday():返回日期中的星期几; ◆ Hour():返回时间中的小时数; ◆ Now():返回系统当前的日期和时间。
3.2 创建选择查询 例3-3:时间函数的应用 1. 构造查询条件表达式,把7月份出生的学生查找出来。 Month([csrq])=7; 返回首页 3.2 创建选择查询 例3-3:时间函数的应用 1. 构造查询条件表达式,把7月份出生的学生查找出来。 Month([csrq])=7; 2. 构造计算表达式,根据出生日期计算学生年龄。 Year(Date())-Year([出生日期]) 3. 构造表达式,表示出系统日期10天前的日期。 Date()-10 说明:在任何计算表达式中的符号都必须在英文半角输入状态下输入,否则无效。[出生日期]为字段标识符,在表达式中引用字段名。
自定义计算 3.2 创建选择查询 注:[gscj]为字段标识符,方括号内是字段名。如果使用学生表中的姓名字段,表达式为:[学生]![姓名]。 返回首页 3.2 创建选择查询 自定义计算 注:[gscj]为字段标识符,方括号内是字段名。如果使用学生表中的姓名字段,表达式为:[学生]![姓名]。
返回首页 3.7 SQL查询 SQL查询视图
SQL语言包含4个部分功能: 3.7 SQL查询 数据查询(SELECT语句) 数据操纵(INSERT, UPDATE, DELETE语句) 返回首页 3.7 SQL查询 SQL语言包含4个部分功能: 数据查询(SELECT语句) 数据操纵(INSERT, UPDATE, DELETE语句) 数据定义(CREATE, DROP等语句) 数据控制(COMMIT, ROLLBACK等语句)
3.7 SQL查询 CREATE命令 CREATE命令用来创建表、视图或索引,其命令格式为: 返回首页 3.7 SQL查询 CREATE命令 CREATE命令用来创建表、视图或索引,其命令格式为: Create Table <表名> (<列名1> <数据类型> [列完整性约束条件], <列名2> <数据类型> [列完整性约束条件], …… )[表完整性约束条件]; 例3-15:创建一个教师信息表,包括:编号、姓名、职称、出生日期、简历等字段。其中,编号字段为主索引字段(不能为空,且值唯一)。 Create Table 教师信息 (编号 char(9) not null unique, 姓名 char(9), 职称 char(10), 出生日期 date, 简历 memo);
3.7 SQL查询 DROP命令 DROP命令用来删除表、视图或索引,其命令格式为: Drop Table <表名>; 返回首页 3.7 SQL查询 DROP命令 DROP命令用来删除表、视图或索引,其命令格式为: Drop Table <表名>; Drop Index <索引名>; Drop View <视图名>; 例3-15:删除教师信息表。 Drop Table 教师信息;
3.7 SQL查询 SELECT命令 返回首页 利用SELECT命令可以构造数据查询语句,其语法结构为: Select [All | Distinct] <目标列名1>,<目标列名2>,…… From <表名1>,<表名2> [Where <条件表达式>] [Group By <分组列名> [Having <条件表达式>] [Order By <排序列名> [Asc | Desc] ] 语句中各关键词的含义为: All(默认):返回全部记录; Distinct:略去选定字段中重复值的记录; From:指明字段的来源,即数据源表或查询; Where:定义查询条件; Group By:指明分组字段,Having:指明分组条件; Order By :指明排序字段,Asc | Desc:排序方式,升序或降序。
3.7 SQL查询 返回首页 例3-15:从学生成绩表中,查询出英语061班中全体学生的记录,结果按照高数成绩的升序排序。 Select All xh ,xm ,,bj ,gscj ,zzcj ,yycj ,jscj From 学生成绩 Where bj=”英语061” Order By gscj Asc ; 如果本例的条件改为,查询出英语061班中高数成绩75分以上全体学生的记录,两个条件并列,则语句应为: Select All xh ,xm ,bj ,gscj ,zzcj ,yycj ,jscj From 学生成绩 Where bj=”英语061” and gscj>=75 Order By gscj Asc; 如果本例的条件改为,查询出英语061班中全体学生的记录,显示出他们的学号、姓名、班级和入学成绩,则语句应为: Select All 学生成绩.xm , 学生成绩.bj , 学生基本信息.rxcj From 学生成绩,学生基本信息 Where 学生成绩.xh=学生基本信息.xh and bj=”英语061”
3.7 SQL查询 INSERT 命令 通过该命令可以向数据表中插入新记录。 例3-16:向公共选修课表中插入一条新纪录。 Insert 返回首页 3.7 SQL查询 INSERT 命令 通过该命令可以向数据表中插入新记录。 例3-16:向公共选修课表中插入一条新纪录。 Insert Into 公共选修课 Values (“2012”, ”中国武术”,”4”); UPDATE 命令 通过该命令可以修改数据表中的数据。 例3-17:修改公共选修课表中的数据,将课程“中国武术”改为“中国散打武术”。 Update Set kc=”中国散打武术” Where kc=”中国武术”
3.7 SQL查询 GRANT 命令 REMOVE 命令 通过该命令可以将指定操作权限授予指定的用户。 返回首页 3.7 SQL查询 GRANT 命令 通过该命令可以将指定操作权限授予指定的用户。 例3-18:把对公共选修课表的查询权限授予所有用户。 Grant Select On Table 公共选修课 To Public; REMOVE 命令 通过该命令可以收回授予用户的权限。 例3-19:收回对公共选修课表的所有查询权限。 Remove Select On Table 公共选修课 From Public;
2.5 编辑数据表 数据排序的操作过程如下: 2.5.5 数据排序 返回首页 2.5 编辑数据表 2.5.5 数据排序 数据排序的操作过程如下: (1)点击字段选定器,选中要用于排序的字段(或将光标置于该字段中的任一单元格)。 (2)选择下面的一种操作 ● 单击工具栏中的“升序排序”按钮或“降序排序”按钮。 ● 选择“记录/排序/升序排序(降序排序)”菜单项。 ● 在选定字段中,点击鼠标右键,选择弹出菜单中的“升序排序”或“降序排序”选项。 (3)在关闭数据表时,排序结果可以保存。
返回首页 2.5 编辑数据表 2.5.6 数据筛选 按选定内容筛选 按窗体筛选 高级筛选/排序
返回首页 2.6 建立表关系 表关系示意图
返回首页 2.7 数据库的管理 2.7.1 数据表的管理 表复制 表更名 删除表 设置表属性
返回首页 2.7 数据库的管理 2.7.2 数据库的管理 数据库的转换 表数据库备份 数据库的压缩和修复 数据库的拆分 数据的导入、导出
Thank You ! 返回首页