




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一、二章总结ACCESS 数据库技术及应用李志敏QQ:44324452EMail:44324452 Access基本信息 l Assess能够存取 Access/Jet、Microsoft SQL Server、Oracle,或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的“进阶用户”则能使用它来开发简单的应用软件。虽然它支持部分面向对象(OO)技术,但是未能成为一种完整的面向对象开发工具。 l 其实Access 也是微软公司另一个通讯程序的名字,想与 ProComm 以及其他类似程序来竞争。可是事后微软证实这是个失败计划,并且将它中止。数年后他们把名字重新命名于数据库软件。 Access用途l Microsoft Access在很多地方得到广泛使用,例如小型企业,大公司的部门,和喜爱编程的开发人员专门利用它来制作处理数据的桌面系统。它也常被用来开发简单的WEB应用程序这些应用程序都利用ASP技术在Internet Information Services运行比较复杂的WEB应用程序则使用PHP/MySQL或者ASP/Microsoft SQL Server l 它的使用方便程度和强大的设计工具为初级程序员提供许多功能。 l 一些专业的应用程序开发人员使用 Access 用作快速应用开发,特别是给街道上的推销员制作一个初型或独立应用程序的工具。可是如果是透个网络存取数据的话,Access 的可扩放性并不高因此当程序被较多使用者使用时,他们的选择多会是倾向于一些客户端-服务器为本的方案,例如 Oracle、DB2、Microsoft SQL Server、Windows SharePoint Services、PostgreSQL、MySQL等。lAccess历史件份版本版本代号支援系统1992年Access 1.11Windows 3.01993年Access 2.02.0Windows 3.1x1995年Access for Windows 957.0Windows 951997年Access 978.0Windows 9x, NT 3.51/4.01999年Access 20009.0Windows 9x, NT 4.0, 20002001年Access 200210Windows 98, Me, 2000, XP2003年Access 200311Windows 2000, XP,Vista2007年Microsoft Office Access 200712Windows XP SP2, Vista第一章 创建数据库本章内容要点数据库与数据库技术Access数据库管理系统创建数据库创建表表的相关知识数据库l 存储在计算机存储设备中的结构化的相关数据的集合。以一定的组织方式将相关的数据组织在一起存放在计算机存储器上,能为多个用户共享的,同时与应用程序彼此独立的一组结构化的相关数据的集合。数据模型:是指反映客观事物之间联系的数据组织的结构和形式。层次模型 网状模型关系模型层次模型 层次模型用树形结构来表示各类实体以及实体间的联系。 网状模型 网状模型用网络结构表示实体类型及其实体之间联系的模型。 关系模型 关系数据库(Relation Database)若干个依照关系模型设计的数据表文件的集合,即关系数据库是由若干张关系模型设计的二维表组成的。数据库技术l 其指导思想是对所有数据实行统一的、集中的、独立的管理,使数据存储独立于使用数据的程序,即通过一个叫数据库管理系统的软件集中管理独立存放的数据,并成为应用程序和数据打交道的接口,真正实现数据共享。数据库管理系统(DBMS)l 是对数据进行各种管理的专用软件,它的主要功能是定义和建立数据库、对数据库进行操作和运行控制、提供应用程序开发环境,数据库管理系统是数据库系统的核心部分。常见的数据库管理系统l ACCESSl VFPl Oraclel SQL Serverl MySQLl DB2 l SYBASE Access数据库管理系统l 启动和退出Accessl Access窗口环境l Access帮助Access基本对象l 表、查询与窗体l 报表、页与宏l 模块表(Table)l 表又被称为“数据库表”,是一种有关特定实体的数据集合,表是存储数据的最基本单位。字段和记录的概念字段和记录: 表中的列被称为字段,即一个信息的类别;表中的行被称为记录,存放表中一个项目的所有信息。Access与Excel区别?l 实现目的不同l 处理功能不同l 使用形式l 运行环境实现目的不同l Excel单纯的说就为数据分析而存在的,而Access却更多面向数据的管理。就是说Excel并不关心数据存在的逻辑或相关关系,更多的功能是将数据从冗余中提纯,并且尽量简单的实现,比如筛选。但筛选出的数据可以为谁服务,为什么这样筛选,以及如何表现这些为什么,Excel没有提供任何直接支持!Access就不同了,数据与数据间的关系可以说是Access存在的根本,Access中所有功能的目的就是为了将这种关系以事物逻辑的形式展现出来。处理功能不同l 理处功能是指处理对象的不同,Excel中对数据几乎没什么要求,除非你设定数据条件。像在同一列中,Excel可以保存多种数据像日期、数字和文本。如果参与计算,数据类型是否统一影响并不大。而Access这么做会直接导致工作停止,Access对数据有严格要求,不同的数据有不同的存储方式,这主要是为性能考虑,相对于Excel,Access形成混乱的可能性要小的多。同时Access处理大量数据的能力也要高于Excel,如果你处理百万行数据,有独立发动机(数据引擎)的Access更理想,只要你有良好的数据规范即可。 使用形式不同l 因为Access中工作元素要比Excel中多,使用者更像开发者。Excel却有非常好的灵活性,表格可以理解为数据和格式,可以有丰富的形式,表现手段,甚至复杂的表单。不过要想在Excel中实现完整的表单系统,仍然需要数据库支持,并且开发量很大!要是你想在Access表中也实现丰富的样式,既没必要也很痛苦。反过来想在Excel中实现良好的用户界面或使用体验,也不容易! 运行环境不同l 运行环境上它们都是客户端软件,唯一的不同的是Access有个官方运行环境,无需安装完整的Office环境,就可以使用开发好的数据库,Excel就没有类似的工具。 l Access和Excel的一个主要区别是Access 可以在同一时刻对多个表进行操作,前提是多个表之间是关联的。总体来说Access要比Excel对使用者的要求高些! 查询(Query)l 用户在创建查询的过程中自定义查询的内容和准则,就会在数据库表中搜索到符合条件的记录。l 查询分类:选择查询,交叉表查询,参数查询,操作查询,SQL查询。l 查询功能:选择字段,选择记录,编辑记录,实现计算,建立新表,建立基于查询的报表和窗体。窗体(Forms)l 窗体是用户和Access应用程序之间的主要接口。l 窗体组成:页眉、主体和页脚组成。l 主体是窗体的核心部分;页眉和页脚用来存放在不同的记录中不需要改变的信息或控件。报表(Report Forms)l 报表能够按照用户所希望的详细程度来显示信息,并且能用任何形式来观看和打印信息。l 报表组成:报表页眉,页面页眉,组页眉,主体,组页脚,页面页脚,报表页脚。页(Page)l 在数据访问页中,可查看、添加到、编辑以及操作数据中存储的数据,也可以包含来自其它数据源(如Excel)的数据。l 特点: 页总是显示当前数据; 页是交互式的; 页可以通过电子邮件以电子方式进行分发。宏l 宏是由一个或多个操作组成的集合,其中每个操作都实现特定的功能,宏可以自动完成常规任务。共同存储在一个宏名下的相关宏的集合就构成了一个宏组。模块(Module)l 由声明、语句和过程组成的集合,它们作为一个已命名的单元存储在一起,对Microsoft visual Basic代码进行组织。l 分类:标准模块:可以放置希望供整个数据库的其他过程使用的Sub和Function过程;类模块:可以包含新对象定义的模块。创建数据库l 设计数据库的基本步骤l 创建数据库的方法设计数据库的基本步骤l 确定新建数据库所要完成的任务和如何使用;l 规划该数据库中所要用到的表;l 确定表中要用到的字段;l 明确有唯一值的字段(主键);l 确定表之间的关系。创建数据库方法l 创建空数据库(员工管理.mdb)l 使用向导创建数据库(联系管理,库存控制)l 关闭和打开数据库l 注意:Access只有一个当前数据库,也就是说当打开另一个数据库时,先前使用的数据库将会被自动关闭。1.4 创建表l 表的概念l 表的结构l 表的创建l 记录的输入表的概念l 表又被称为“数据库表”,是一种有关特定实体的数据集合l 表是存储数据的最基本单位。表结构的概念l 字段名称命名规则:1、最长可包括64个字符(包括空格);2、可以包含字母、汉字、数字、空格和其它字符;3、不能包括句点. 感叹号!方括号 重音符号 ;4、字段名称在表中必须是唯一的;5、字段名称应避免与Access内置的Access函数或属性名称冲突。表结构的概念l 字段属性 每种类型的字段还具备多种属性,如字段大小,默认值,小数位,有效性规则,是否作为索引等。在后面章节中会详细介绍各种属性的使用方法。记录的输入不同数据类型的输入方法l 字符型,数字型:直接输入;l 是/否型:鼠标单击l 日期型:用-或/隔开输入;l 备注型:直接输入,当输入内容较多时,用Shift+F2打开编辑框输入。l 学生练习:向部门表中输入记录。表结构的修改方法:通过表设计视图修改 修改字段名称(修改“调动”表中字段名称) 添加、删除字段(在员工表中添加“简历”字段;在员工表中插入“民族”字段) 调整字段顺序(拖动法)学生练习:在“学习管理”数据库中修改“课程表”结构l 修改4个字段的名称,依次为“课程号”、“课程名”、“学时”、“讲授教师”;l 修改“学时字段”的数据类型为“数字”型;l 调整“课程号”字段到“课程名”之后;l 添加一个新字段“参考教材”,为OLE对象类型,用于存放参考教材的封面图。调整表的外观 改变字段的显示顺序(不改变表的结构) 调整字段的显示高度和宽度(调整高度会影响所有行,调整列只影响本列) 隐藏列和显示列 冻结列(冻结:将指定字段列固定在屏幕上,使用水平滚动条也不会将该字段移出屏幕区域) 设置数据表格式(格式数据表) 改变字体显示小 结l 明确数据库、数据表的概念l 数据库的两种创建方法l 表的三种创建方法l 表结构的修改第三章、记录的操作1 记录指针的控制2 数据的编辑3 记录的操作4 记录的排序5 筛选记录记录指针指示当前记录的位置,在对数据进行操作时,记录指针的位置决定此次操作的记录对象。1.数据表视图中的定位工具 记录选择器 字段选择器 表选择器 记录导航按钮2.记录的定位(任务1) 使用记录号 鼠标单击记录1 记录指针的控制1.数据表视图中的定位工具 记录选择器 字段选择器 表选择器 记录导航按钮2.记录的定位(任务1) 使用记录号 鼠标单击记录3.记录的选择u 选择一条记录u 选择连续多条记录u 选择一个字段u 选择多个连续字段列u 选择整个表4.查找数据通配符的使用通配符用法示例*任意字符Wh*?任意单个字符b?m方括号内任意单个字符baem!任何不在括号内的字符b!aem-范围内的任何一个字符,必须以递增方式指定区域ba-cd#任何单个数字字符1#3通配符的使用举例v 在员工表中查询所有姓刘的记录刘*v 查询员工表中刘德华和刘得华两名教师刘德得华v 查询员工表中不姓刘的教师!刘*v 查询年龄在30至36之间的记录30-6v 查询年龄在30至39之间的记录3?或3#或30-93.2 数据编辑 修改数据(删除、输入、替换) 替换数据 任务4:把“团员”改为“共青团员”; 任务5:将3、8、10位的政治面目改为 “党员”。 复制数据 任务4:修改“刘门口” 、“多方式”的学 历为“博士”。3.3 记录的操作v 添加记录任务7:在“员工”表中添加两条记录;v 删除记录任务8:删除“员工”表中某条记录; v 插入记录任务7:在“员工”表中插入两条记录;练习任务: 在“学习管理”数据库中完成相应操作。3.4 记录的排序数据排序可分为升序和降序两种排序规则 英文按字母顺序排序,大、小写视为相同 中文按拼音字母的顺序排序 数字按大小排序 日期和时间按日期的先后顺序排序排序时要注意以下几点:对于文本型字段,如果它的取值含有数字,那么将数字视为字符串,因此排序时是按照ASCII码值的大小来排序,而不按照数值本身的大小来排序,如果希望按数值大小排序,应在较短的数字前面加上零。如:文本字符串“3”、“7”、“21”,按升序排序的结果是什么? 若改为“03”、“07”、“21”排序的结果又是什么?v 按升序排列字段时,如果字段的值为空值,则将包含空值的记录排列在列表中的第一条v 数据类型为备注、超链接或OLE对象的字段不能排序v 排序后,排序次序将与表中数据一起保存3.4.2 排序的分类数据排序操作可分为1. 快捷按钮排序(适合按一个字段排序)(任务10)2. 菜单排序(适合于按多个字段排序)(任务11) 3.5 筛选记录筛选就是将数据按照特定的主题过滤,找出符合条件的记录。 按选定内容筛选(任务12) 按窗体筛选 与、或( 任务13、任务14) 按筛选目标筛选(任务15) 高级筛选(任务16)第四章、数据表操作引例 在输入日期型数据时,应该以2008-03-24或2008/03/24,可显示为2008-3-24 8:50:00,2008年3月24日,08-03-24,2008-3-24, 文本型字段大小的默认值都是50。内容要点l 字段属性的定义l 表文件的操作l 表关系的设置定义字段属性 一个字段的属性是这个字段特征值的集合,该特征值集合控制字段的工作方式和表现形式。字段属性可分为常规属性和查阅属性两类。定义字段属性 字段大小(P任务1) 格式 字段的默认值(P任务2) 输入掩码(P任务3) 有效性规则及有效性文本(P任务4) 必填字段 索引(任务5) 字段的查阅属性(任务6)字段大小 字段数据类型为文本或数字时,大小属性才是可设置的。 文本类型字段大小可设置值为1255。 数字型字段大小有多种设置值,各种设置值的名称和数据范围如下表数字型字段大小的属性取值表 可设置值小数位数所占字节数字节无1整型无2长整型无4单精度74双精度158小数2812格式 格式属性对于不同的字段数据类型使用不同的设置,只影响数据的显示方式,不影响数据的存储方式。可使用预设的格式(7种预设格式见下页表),也可使用格式符号创建自定义格式。 日期/时间数据类型预设格式表设置说明及举例常规日期2008-3-24 18:50:05长日期2008年3月24日中日期08-03-24短日期2008-3-24长时间18:50:05中时间下午 6:50短时间18:50日期/时间数据类型格式属性符号说明m一年中的月份,根据需要以一位或两位数显示(1 到 12) mm一年中的月份,以两位数显示(01 到 12) mmm月份名称的前三个字母(Jan 到 Dec)mmmm月份的全称(January 到 December) y一年中的日期数(1 到 366) yy年的最后两个数字(01 到 99) yyyy完整的年(0100 到 9999)q以一年中的季度来显示日期(1 到 4)。 示例 显示 Mon, Jun 2, 1997 ddd, mmm d , yyyy 显示June 02, 1997 mmmm dd, yyyy 显示 This is week number 22 This is week number ww 显示Today is Tuesday Today is dddd 显示 2008-03-11 yyyy-mm-dd“数字”和“货币”数据类型格式属性 自定义的数字格式可以有一到四个节,使用分号 (;) 作为列表项分隔符。每一节都包含了不同类型数字的格式设置: 节说明 第一节 正数的格式 第二节 负数的格式 第三节 零值的格式 第四节 Null 值的格式。示例 0;(0); Null 按常用方式显示正数;负数在圆括号中显示;如果值为 Null则显示 Null。 +0.00;-0.0;0.0; 空值 在正数或负数之前显示正号+ 或负号-;如果数值为零则显示 0.0;如果值为 空则显示 空值 。“文本”和“备注”数据类型格式属性 “文本”和“备注”字段的自定义格式最多有两个节,每节都包含了字段中不同数据的格式 节说明 第一节有文本的字段的格式; 第二节有零长度字符串及 Null 值字段的格式。自定义文本和备注格式属性符号表符号说明符号说明要求文本字符或空格所有字符转换为大写示例: 要求当字段中没有数据时,显示 Unknown -;Unknown 在员工表中要求员工工号只需输入四位数,显示如:00-01 - 将姓名字段中的字符都转换为大写:字段的默认值 使用此属性可以指定在添加新记录时自动输入的值,如果表中记录的某字段值大部分相同,则为该字段设置一个默认值可以简化输入。添加新记录时可以接受默认值,也可以重新输入新值覆盖默认值。默认值只对新生成的记录有效。 Date():当前日期;Time():当前时间; Now():当前日期和时间; Date()+ Time()= Now() 注:以上两个函数仅对日期型字段有效;当默认值的内容超出字段宽度时则出现“# 错误”。输入掩码 输入掩码定义输入数据时的模式,并帮助用户输入正确的数据; 输入掩码中符号的含义,如(999)99999999-999;0;_ (999)99999999-999 :约定用户数据的输入格式,括号和减号称为文字性字符,不需要输入 0:表示将输入掩码中的文字性字符,如括号和减号与数字一起存储.若此处是1,表示只存储数字部分,而忽略文字性字符 _:占位符,也可以设置成其他字符,如:空格。 设置输入掩码时可以使用的特殊符号见下页表格:输入掩码可用的特殊字符表特殊字符说 明0输入09,输入时不允许留空9数字09或空白#数字09或空白,还可输入+ -&任意字符,但不允许留空,必须满足位数C任意字符,允许留空AAZ,不允许留空,数字也可aAZ,允许留空,数字也可L仅能代表一个英文字母,不允许留空,数字不可以?仅能代表一个英文字母,允许留空,数字不可以转换右边的字符为大写英文字符输入掩码示例 例1:输入掩码格式符:(00)000-0000;0; 用户输入:017778888 字段中显示内容为:(01)777-8888 存储值: 例2:输入掩码格式符:(00)000-0000;1; 用户输入:017778888 字段中显示内容为:(01)777-8888 存储值: 例3:输入掩码格式符:#999 用户输入:-110 字段中显示内容为:-110 存储值: 例4:输入掩码格式符:& 用户输入:Mike 字段中显示内容为: Mike 存储值:有效性规则及有效性文本 有效性规则用来自定义某个字段数据输入的规则,以保证所输入数据的正确性。 有效性文本用于在数据输入违反有效性规则时提示用户。示例:设置“性别”字段的输入值只能是“男”或“女”,如有违反,则提示“性别字段只能输入男或女”。=“男”or”女”示例 输入项必须是非零值 0 输入项必须为空值或大于1000 1000 Or Is Null 输入项必须是5个字符并以字母A开头 Like “A?” 输入项必须是 1996 年中的日期 =1996-01-01 And 1997-01-01 必填字段 当取值是”是”时,表示必须填写本字段,取值为”否”时,表示可以不填写本字段数据。索引 索引是用于对记录进行排序的一种方法。为字段建立索引可以迅速地在表中查找记录,也可按照一定的顺序进行数据访问,提高管理效率。 具有此属性的数据类型:文本型、数字型、货币型和日期/时间型,无法对自动编号、备注、超链接、OLE对象型字段建立索引。 索引的概念涉及到记录的物理顺序与逻辑顺序。文件中的记录一般按其磁盘存储顺序输出,这种顺序称为物理顺序。索引不改变文件中记录的物理顺序,而是按某个索引关键字(或表达式)来建立记录的逻辑顺序。在索引文件中,所有关键字值按升序或降序排列,每个值对应原文件中相应的记录的记录号,这样便确定了记录的逻辑顺序。索引文件会增加系统开销,我们一般只对需要频繁查询或排序的字段创建索引。如果字段中许多值是相同的,索引不会显著提高查询效率。第一张表是原表文件内容,第二张表是依据“学生姓名”建立的一个排序文件,第三张表是依据“学生姓名”建立的一个索引文件。其他属性 输入法模式; 标题:标题是表或查询在数据表视图中字段的列标题,可以与字段名称相同,也可以与字段名称不相同。 允许空字符串。字段的查阅属性 查阅属性是指可以使用“组合框”或“列表框”代替“文本框”来显示或输入表中的数据,从而方便用户的输入,以防止字段中出现无效的数据,因为系统只能接收组合框或列表框中的值。 对于文本或数字型字段,此属性可以设置为“文本框”、“列表框”、“组合框”;而对于是/否型字段,此属性可以设置为“复选框”、“文本框”、 “组合框”字段的查阅属性 显示控件:选择种类; 行来源类型:选择表/查询; 行来源:选择数据来源; 列数:指定在控件中显示的数据源的列数; 绑定列:指定回填到字段中的是数据源中的哪一列,例如要回填第二列,则在设计视图中选择绑定列为2,保存后在表中选择,选择完后再把绑定列设置为2+1,回到表中填充的便是第二列数据。 列标题:是否显示列标题。字段的查阅属性示例 设置性别字段输入时为列表框,列表框中的选项有男、女两个选项; 设置工作部门号显示列表框,并以部门编号表中的数据作为数据来源。表关系的设置 表关系的概念 关系就是设定两个表之间的联系,要设置关系的两个表必须有相同的字段。Access中表与表之间的关系分为一对一和一对多两种类型,具体见下页表。 表关系的创建(任务9) 子数据表(任务10)一对一关系一对多关系表关系的设置 在定义表之间关系前,应把要定义关系的所有表关闭。 表关系的创建(任务9:创建“部门表”和“员工表”之间的一对多关系) 子数据表(任务10:在“部门”表中查看“员工”表数据)表文件的操作 表的复制(成绩表示例) 将一个表中的数据全部追加到另一个表中; 将外部数据库中的表导入到本数据库中; 在本数据库中创建一个与已存在表结构类似的表。 表的删除 表的重命名 数据表的导出(任务11:将员工表数据导出成“员工.xls文件”) 数据表的导入(任务12:将刚导出的“员工.xls文件”导入到数据库中)小结 字段属性的控制方法 字段大小、格式、默认值、输入掩码、有效性规则及文本、必填字段、索引、查阅属性 表文件的操作 复制、删除、重命名、导入、导出 设置表关系第五章总结引入查询的目的:把数据正确保存在数据库中不是最终目的,更好使用、处理和分析数据,从中提取有用的信息 ,需要通过查询实现。另外多表间的数据分析和提取也很多见,查询的功能:选择字段选择记录编辑记录实现计算建立新表建立基于查询的报表和窗体查询的类型:选择查询 根据指定的查询准则,从一个或多个表中获取数据并显示结果,也可以对记录进行分组、总计、计数、平均及其他类型的计算。交叉表查询 将来源于某个表中的某个字段分组,一组列在数据表的左侧,一组列在数据表的上部,在行与列的交叉处显示某个字段的统计值,如上图。参数查询 参数查询支持按指定参数的方式进行查询,即在查询时要求用户给出一个或多个参数值,并根据这些值完成查询功能。操作查询 同选择查询类似,都是由用户指定查找记录的条件,但选择查询是检查符合特定条件的一组记录;而操作查询是在一次查询操作中对所得结果进行编辑等操作。操作查询主要有4种:生成表、删除、更新和追加。SQL查询 是用户通过使用SQL语句来创建的一种查询。SQL查询主要包括:联合查询、传递查询、数据定义查询和子查询等。创建查询:创建无条件查询设计多表查询设计条件查询查询重复项查询向导查找不匹配项查询向导查询的使用:查询的字段属性(设置“员工职称”查询的“姓名”字段的输入掩码属性:&CC;_编辑查询中的字段添加、删除、移动表和字段在查询中修改原表中的字段名称排序查询结果在查询中左下角显示字段的说明信息。多表查询示例查询重复项查询向导示例员工管理查询重复项查询的意义:当要设置某一个字段为主键时,如果该字段中存在着重复值,是不允许设置主键的,要查到该字段中的重复值可以利用该操作。查询“员工表”中“职工编号”字段是否存在重复值。查找不匹配项查询向导示例员工管理查找不匹配项的意义: 显示一个表中存在而其他表中不存在对应记录的记录,这样的记录被称为孤立记录。判断”部门表”中是否存在孤立记录,“员工表”为参考表。设置条件条件中的运算符l 关系运算符:=、=l 逻辑运算符:NOT、AND、ORl 特殊运算符(见下页)特殊运算符l 列表 In (Not In) IN 运算符用来匹配列表中的任何一个值。IN子句可以代替用OR子句连接的一连串的条件。 l 范围 Between (Not Between) Between And运算符指定了要搜索的一个闭区间。 l Is Null (Is Not Null)l 模式匹配 Like( Not Like )LikeLike运算符检验一个包含字符串数据的字段值是否匹配一指定模式。通配符含义?任何一个单一的字符*任意长度的字符#09之间的单一数字条件查询示例员工管理l 查询姓名为“李天文”或“周锋”的记录,显示“姓名、性别、出生日期”字段,则“姓名”字段的“条件”应如何输入?l In (李天文, 周锋), 思考:用or怎么书写呢?l =李天文 Or =周锋l 思考:查询除了李天文、周锋以外的记录? 员工管理l 查询员工表中姓刘的姓名、性别、出生年月,则“姓名”字段的“条件”应如何输入?l Like 刘*l 思考:非刘姓的员工?员工管理l 查询1992年出生的男员工的姓名、性别、学历、职称,则“出生日期”字段的“条件”应如何输入?l Between #1992-1-1# And #1992-12-31#l Year(出生日期)=1992l 查询员工表中“姓名”为空的员工的职工编号、姓名、性别、出生年月,则“姓名”字段的“条件”应如何输入?l Is Nulll 思考:非空l 查询员工表中7月份出生的员工,则“出生日期”字段的设置条件为: Month(出生日期)=7l 思考:查询1992年出生的男员工的姓名、性别、学历、职称和联系电话,出生日期字段的设置条件为? Year(出生日期)=1992 Between #1992-1-1# And #1992-12-31#员工管理在员工表中查询员工党员的信息,则“是否党员”字段的设置条件为?-1说明:-1表示 “是” 或 TRUE;0表示 “否” 或 FALSESELECT 语法SELECT predicate *|table.*|table.field1 AS alias1,table.field2 AS alias2, FROM tableexpression ,IN externaldatabase WHERE GROUP BY HAVING ORDER BY谓词(predicate)ALL 返回条件的所有记录,默认为ALLDISTINCT 如果有多个记录的选择字段的数据相同,只返回一个DISTINCTROW 可从SELECT语句的结果中消除重复的行TOP n percent 指定返回结果集的前n行,Percent指定返回结果集行的百分比FROM子句FROM子句指定了Select语句中字段的来源。可以指定一个或多个表或查询;两个或多个表或查询之间的链接。Where 子句指定查询条件关系运算符逻辑运算符 范围(BETWEEN 和 NOT BETWEEN) 列表(IN ,NOT IN) 模式匹配(LIKE) 分组和总结查询结果Group By和Having子句用来对数据进行汇总。Group By子句指明了按照哪几个字段来分组,而将记录分组后,用Having子句过滤这些记录。 Group By子句后最多可以带有十个字段,排序优先级按从左到右的顺序排列。ORDER BY子句Order by子句按一个或多个(最多16个)字段排序查询结果,可以是升序(Asc)或降序(Desc),缺省是升序。Order子句通常放在Sql语句的最后。 Order子句中定义了多个字段,则按照字段的先后顺序排序。 示例 员工管理选择员工表中的所有字段。SELECT * from 员工;SELECT 员工.* from 员工;查询员工表中的姓名、性别、职称字段,且姓名字段的别名为员工。SELECT 员工.姓名 AS 员工,员工.性别,员工.职称 from 员工;l 查询员工表中职称是高工的员工的姓名、性别、职称。SELECT 姓名,性别, 职称FROM 员工WHERE 职称=高工;l 查询员工表中员工编号为0001,0002,0003的员工信息。select *from 员工where 职工编号 In (0001, 0002, 0003);思考:是否还有其他SQL语句?查询员工表中员工编号为01,02,03的员工信息 select *from 员工where 职工编号=0001 or 职工编号=0002 or 职工编号= 0003;示例查询部门负责人的部门名称、联系电话和姓名SELECT 部门.部门名称,部门.联系电话,员工.姓名 from 部门 inner join 员工 on 部门.负责人工号=员工.职工编号;l 各部门员工清单查询,要求显示员工的部门名称,姓名,性别字段SELECT 部门.部门名称, 员工.姓名, 员工.性别FROM 部门 INNER JOIN 员工 ON 部门.部门编号=员工.工作部门号;示例学习管理显示每位学生的姓名, 课程名称以及考试成绩SELECT 学生.姓名, 课程.课程名称, 选修.期末成绩FROM 学生 INNER JOIN (选修 INNER JOIN 课程 ON 选修.课号 = 课程.课程编号) ON 学生.学号 = 选修.学号;示例查询成绩大于80分的学生的姓名、课程名和成绩,查询结果按期末成绩排升序.SELECT 学生.姓名, 课程.课程名称,选修.期末成绩FROM 学生 INNER JOIN (选修 INNER JOIN 课程 ON 选修.课号 = 课程.课程编号) ON 学生.学号 =选修.学号 where 选修.期末成绩80 order by 选修.期末成绩 asc;l 统计员工表中各职称的人数,计数结果别名为各职称人数Select 员工.职称,count(员工.职工编号) AS 各职称人数from 员工Group by 员工.职称;示例l 统计员工表中男女职工各有多少名。SELECT 员工.性别, Count(员工.职工编号) AS 男女职工FROM 员工GROUP BY 员工.性别;示例l 查询员工表中人数大于3的部门SELECT 员工.工作部门号, Count(员工.职工编号) AS 人数FROM 员工GROUP BY 员工.工作部门号HAVING Count(员工.工作部门号)3;示例 学习管理l 统计学生表中平均成绩在80分以上的学生的姓名select 姓名,average(期末成绩) as 平均From 学生 INNER JOIN (选修 INNER JOIN 课程 ON 选修.课号 = 课程.课程编号) ON 学生.学号 =选修.学号group by 姓名 having average(期末成绩)80Order by average(期末成绩) desc ;示例l 在成绩管理数据库中,统计每个班学生各门课程的最高分,并且结果按班级名称排降序。Select 学生信息.班级名称, Max(考试成绩.英语) as 英语最高分, Max(考试成绩.高等数学) as 高等数学最高分, Max(考试成绩.C语言) as C语言最高分, Max(考试成绩.微机原理) as 微机原理最高分From 学生信息 Inner join 考试成绩 on 学生信息.学号 = 考试成绩.学号Group by 学生信息.班级名称Order by 学生信息.班级名称 desc;复杂查询l 加入计算的查询l 参数查询l 操作查询l 交叉表查询l SQL查询l 联合查询和子查询加入计算的查询l 员工管理l 统计员工总人数(“视图菜单” “总计”);l 统计高工人数;l 注意:Access规定,“条件”指定的字段不能出现在查询结果中,所以用户不可以设置有条件的字段为显示状态。分组总计查询l 员工管理l 统计各部门员工人数;l 将此查询中的”职工编号之计数”,显示为”员工人数”;l 在查询中添加新字段语法如下: 新增字段名:引用数据源!引用字段计算查询应用举例l 学习管理l 创建各班期末平均成绩查询;l Left函数:新增字段名:left(表名!字段名,n),意义是取出表中某个字段的前n位;如果要设置小数位数用字段属性“格式”中的“固定选项”l 创建每名学生平均成绩查询;l 查询低成绩学生名单(即找出个人平均分低于班级平均分的学生)。计算查询练习l 学习管理l 查询所有团员信息l 查询各门课程及主讲老师的信息l 查询不及格的学生l 统计各班不及格人数l 带在查询过程中,利用对话框来提示输入参数,检索符合所输入参数的记录或值,可创建单参数查询,也可创建多参数查询。参数的查询l 员工管理l 创建按职工编号查询员工信息查询(在职工编号字段的条件中输入:请输入职工编号:);l 创建按职工姓名查询员工信息的模糊查询;l 创建按部门和职工编号查询员工信息的查询;设计操作查询l 更新查询l 创建更新员工职称查询,即把1966年前出生的员工的职称改为“高工”;l 更新职工年龄查询;在“年龄”字段的“更新到”中输入Year(Date()-Year(出生日期);l 追加查询(从一个或多个表中将一组记录添加到另一个表中)l 创建追加查询,追加高级职称员工数据。在追加查询中的字段最好囊括追加到表中的字段。设计操作查询l 更新查询l 创建更新员工职称查询,即把1966年前出生的员工的职称改为“高工”;l 更新职工年龄查询;在“年龄”字段的“更新到”中输入Year(Date()-Year(出生日期);l 追加查询(从一个或多个表中将一组记录添加到另一个表中)l 创建追加查询,追加高级职称员工数据。在追加查询中的字段最好囊括追加到表中的字段。交叉表查询l 交叉表查询将来源于某个表中的某个字段分组,一组列在数据表的左侧,一组列在数据表的上部,在行与列的交叉处显示某个字段的统计值,如上图。交叉表查询实例员工管理l 使用查询向导创建交叉表查询,统计各部门员工人数、男女职工人数学习管理l 使用设计视图创建交叉表查询,显示每名学生每门课程的期末成绩SQL查询:子查询子查询如果一个查询的结果被用来作为另一个查询的条件,则这个查询就被称为子查询,而对应的另一个查询则称为主查询。l 查询职工表中高于平均年龄的职工记录:操作的关键是在“年龄”字段的条件中输入:(select average(年龄) from职工年龄)第六章窗体应用窗体实现人机交互知识体系: 窗体对象的概念 使用向导创建窗体 窗体的显示特性 基本窗体控件的应用内容摘要 窗体概述 窗体的作用 窗体的组成 窗体的分类 窗体的创建 窗体的显示特性 美化窗体 控件应用 控件的操作 控件格式属性 控件的数据属性窗体概述 窗体就是Windows操作系统中的窗口,在Microsoft Access中窗体是一种数据库对象,用户与系统及数据库进行交互的主要界面就是通过窗体来实现的。利用窗体不仅可以方便地进行各项操作,还可以将整个数据库中的功能组织起来,形成一个完整的应用系统。窗体的作用 输入数据库信息 利用窗体可向数据库中的表或查询输入数据信息。窗体的作用 显示和编辑数据 窗体可用不同风格来显示数据库中的数据,还可使用个性化的窗体进行修改、添加和删除数据信息,完成对数据库中数据的编辑操作。窗体的作用 控制应用程序执行流程 可以和宏或函数结合使用,使数据库中的各个对象紧密结合起来控制应用程序,实现控制应用程序的流程。例如,在窗体中设计一个命令按钮,对其进行编程,在用户单击这个按钮时,会触发并运行一个宏对象,执行一系列操作,从而达到控制程序执行流程的目的。窗体的作用 显示消息 在窗体中可以显示一些交互性的提示信息,如解释、警告或说明消息,便于及时通知用户即将发生的动作信息。 打印数据 除了报表对象之外,还可将窗体对象中的信息打印出来。 用于创建切换面板及自定义对话框 窗体可用作切换面板来打开数据库中的其他窗体和报表等操作,还可用做自定义对话框接收用户的输入及根据用户的输入来执行相应操作等。窗体的组成窗体一般由5个节组成。 窗体页眉:在窗体视图的顶部,打印时只出现在第一页的顶部。 页面页眉:打印时在第一页窗体页眉的下面,或其他各页的顶部。 主体:通过用来显示记录数据,绝大多数的控件及信息都出现在主体节中。 页面页脚:在打印时出现在每一页的底部。 窗体页脚:在窗体视图的底部,打印时只出现在最后一页的最后一个主体节之后。各种类型的窗体纵栏式窗体特点:按列分割,左边是字段名,右边显示字段内容,一般一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 备份文件备份周期统计表
- 食品加工工艺与安全规范考试卷
- 进销存软件开发服务合作协议
- 2025年信息安全与风险管理考试试题及答案
- 小儿高热惊厥的急救
- 2025年社会变迁与家庭教育考试试题及答案
- 2025年母婴护理师考试试题及答案
- 2025年应用统计学基础能力考试试卷及答案
- 2025年公共卫生管理课程考试试卷及答案
- 2025年儿童发展与家庭教育考试试卷及答案
- 2024年吉林省国资委监管企业招聘真题
- 大学语文试题及答案 二
- 物理中考二轮复习教案 1作图专题3(电学电磁学)
- 石膏厂安全管理制度 最终
- 2025年河北省中考麒麟卷生物(二)
- 四级阅读测试题及答案
- 农村供水水质管理制度
- 建筑工地应急预案方案
- T/CIE 208-2024儿童机器人教育评价指南
- 2025年高考英语课后续写高频考点话题分类第07讲 读后续写之成长类主题(讲义)
- 2025年广东中考百校联考语文试卷 2025年广东中考百校联考语文试卷
评论
0/150
提交评论