欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    零售商店数据库应用系统GrocerMIS实例分析 .pptx

    • 资源ID:87365400       资源大小:2.74MB        全文页数:136页
    • 资源格式: PPTX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    零售商店数据库应用系统GrocerMIS实例分析 .pptx

    查询是关系数据库中的一个重要概念,查询对象不是数据的集合,而是操作的集合。查询的运行结果是一个动态数据集合,尽管从查询的运行视图上看到的数据集合形式与从数据表视图上看到的数据集合形式完全一样,尽管在数据表视图中所能进行的各种操作也几乎都能在查询的运行视图中完成,但无论它们在形式上是多么的相似,其实质是完全不同的。可以这样来理解,数据表是数据源之所在,而查询是针对数据源的操作命令,相当于程序。第1页/共136页在数据库应用系统中,这样一些需求总是存在的:某个任务要求筛选出一个数据表对象中那些满足某种特定条件的数据,这需要为之建立一个选择查询对象;查阅一批数据时,要求看到相关的计算值,这需要为选择查询对象设置计算字段;要求奖若干个数据表中的数据按照设定的关联合并成为一个查询数据集合,这需要建立源于多个数据表对象的查询对象;要求获得数据表中某些数据的分类汇总计算结果,这需要建立具有汇总字段的查询对象;要求获得数据表转置后的分类统计结果,这需要建立一个交叉表查询对象;等等。第2页/共136页满足这样一些需求,正是Access 2003查询对象的功能所在。利用查询对象可以通过不同的方法来查看、更改以及分析数据。也可以将查询对象作为窗体和报表的记录源。因此可以说,Access 2003的查询对象是Access 2003数据库应用系统一个不可或缺的组成部分。在Access 2003中,查询的实现可以通过两种方式进行,一种是在数据库中建立查询对象,另一种是在VBA程序代码或模块中使用结构化查询语言(SQLStructured Query Language)。本章介绍Access 2003查询对象的基本概念、操作方法和应用方式,讲解SQL的基本知识,并分析Access 2003查询对象与SQL的关系。第3页/共136页4.1 查询对象设计基础应用Access 2003的查询对象是实现关系数据库查询操作的主要方法,借助于Access 2003为查询对象提供的可视化工具,不仅可以很方便地进行Access 2003查询对象的创建、修改和运行,而且可以使用这个工具生成合适的SQL语句,直接将其粘贴到需要该语句的程序代码或模块中。这将非常有效地减轻编程工作量,也可以完全避免在程序中编写SQL语句时很容易产生的各种错误。一个Access查询对象实质上是一条SQL语句,而Access提供的查询设计视图实质上是为我们提供了一个编写相应SQL语句的可视化工具。在Access提供的查询设计视图上,通过直观的操作,可以迅速地建立所需要的Access查询对象,也就是编写一条SQL语句,从而增加了设计的便利性、减少了编写SQL语句过程中可能出现的错误。第4页/共136页由查询生成的动态数据集合可以用于六种不同的目的,根据其应用目标的不同,可以将Access 2003的查询对象分为六种不同的基本类型。1选择查询选择查询是从多个数据表中筛选数据形成的查询对象,其中可以包含计算字段、分类汇总字段,可以设定各种筛选条件。选择查询用于显示数据,形成数据编辑界面。2更新查询更新查询用于在数据表中更改数据。第5页/共136页3追加查询追加查询用于将数据表外部的数据添加到指定数据表的记录中。4生成表查询生成表查询用于将选择查询的结果生成为一个数据表对象。5删除查询删除查询用于在数据表中删除记录。6交叉表查询交叉表查询用于产生采用垂直方式对记录进行分组汇总的查询结果。第6页/共136页4.1 查询对象设计基础创建查询对象查询对象的实质结构化查询语言简介运行查询对象第7页/共136页创建查询对象在Access 2003数据库中设计查询对象是需要在查询设计视图中进行。在Access 2003查询设计视图中,可以在Access 2003数据库中新建一个查询对象,也可以针对Access 2003数据库中已经存在的一个查询对象进行设计修改。第8页/共136页在数据库设计视图中,单击“查询”标签按钮即进入“查询对象”选项卡,如图4-1所示。1 1新建查询对象的操作新建查询对象的操作 第9页/共136页单击数据库设计视图上的“新建”按钮“”,即弹出“新建查询”对话框,如图4-2所示。图4-2 “新建查询”对话框 第10页/共136页 在“新建查询”对话框中,可以从Access提供的五种查询对象新建方法中选择一种。但是,只有学会并理解了“查询设计视图”的操作使用,才可能很好地使用其他方法来加快新建查询对象的操作。在新建查询对话框中选择“设计视图”选项,然后单击“确定”按钮“”,即进入“查询设计视图”。由于是新建查询,所以在查询设计视图中没有任何内容。第11页/共136页 在查询设计视图中新建查询对象的第一步操作是指定数据源,因此,一旦由“新建查询”对话框进入查询设计视图,Access首先在查询设计视图中弹出“显示表”对话框,用以提示操作者指定数据源。这时,操作者需要在“显示表”对话框中逐个地指定数据源,并单击“添加”按钮“”,将指定的数据源逐个添加入查询设计视图上半部的数据源显示区域内。图4-3所示为在“零售商店管理信息系统”数据库中新建“销售数据记录查询”的第一步操作,为查询指定数据源。第12页/共136页图4-3 “显示表”对话框的操作 第13页/共136页 Access查询对象的数据源可以是若干个表,也可以是已经存在的某些查询,还可以是若干个表与某些查询的组合。与此对应,“显示表”对话框中包含三个选项卡:“表”、“查询”、“表和查询”。应该根据实际需要进行适当的选择。例如,为“销售数据记录查询”指定的数据源是“销售数据记录”表。选择并添加完毕查询数据源后,单击“显示表”对话框上的“关闭”按钮“”,就完成了为查询对象指定数据源的操作。第14页/共136页 新建查询对象的第二步操作是定义查询字段,也就是从选定的数据源中选择需要在查询中显示的数据字段。既可以选择数据源中的全部字段,也可以仅选择数据源中的部分字段,且各个查询字段的排列顺序可以与数据源中的字段排列顺序相同,也可以与数据源中的字段排列顺序不同。这一步操作可以通过两种方法完成。第15页/共136页定义查询字段的两种方法定义查询字段的两种方法新建查询对象的第二步操作是定义查询字段,也就是从选定的数据源中选择需要在查询中显示的数据字段。既可以选择数据源中的全部字段,也可以仅选择数据源中的部分字段,且各个查询字段的排列顺序可以与数据源中的字段排列顺序相同,也可以与数据源中的字段排列顺序不同。这一步操作可以通过两种方法完成。第16页/共136页 将数据源表中的“”符号拖曳至设计视图下部的“字段”行中;或下拉“字段”行的列表框,从中选取“”符号。这时,“字段”行中即出现“”符号,“表”行中出现该字段所在的表名,“显示”行中的复选框中出现“”符号。这个新建的查询对象就基本完成了,如图4-4所示。如此方式建立的查选对象在其运行时,将显示数据源表中所有字段中的所有记录数据。即,符号“”代表着全部字段。(1 1)新建包含数据源全部数据字段的查)新建包含数据源全部数据字段的查询询 第17页/共136页图4-4、新建包含数据源全部数据字段查询的操作 第18页/共136页(2 2)新建包含数据源部分数据字段的查询)新建包含数据源部分数据字段的查询 将数据源表中那些需要显示在查询中的数据字段逐个地拖曳至“字段”行的各列中;或逐个地下拉“字段”行列表框,从中选取需要显示的数据字段。这时,“字段”行中出现选中的字段名,“表”行中出现该字段所在表的表名,“显示”行中的复选框中出现“”(它表明该查询字段将被显示,同时应该看到,取消这个标记则意味着得到了一个不被显示的查询字段)。第19页/共136页 如此选择查询字段,可以将查询字段的排列顺序设置为不同于数据源中字段的排列顺序,是非常灵活的一种方式。图4-5所示为仅选中“销售数据记录”表中四个字段的查询对象新建的情况。这样的查询对象在其运行时,将显示数据源表中选中字段中的所有记录数据,也就是说:不进行筛选这样一种关系运算。在整个新建查询对象的操作过程中,这个查询对象都将命名为“查询?”。当新建操作完成时,需要关闭查询设计视图,此时将出现“保存”对话框。应该在“保存”对话框中为新建查询对象命名为所需要的名字。第20页/共136页图4-5、新建包含数据源部分数据字段查询的操作 第21页/共136页 对于一个已经新建完成的查询对象,通常都需要对其进行一些设计修改。例如,希望图4-5所示的查询对象在其运行时,能够按照销售数量由大到小地排列显示;希望仅显示满足某种条件的记录数据(即进行筛选操作)等等。针对诸如此类的种种需求,就需要对以上初步建立的查询对象进行设计修改。2查询设计视图应用第22页/共136页 建立查询的操作,实质上是生成SQL语句的过程。也就是说,Access提供了一个自动生成SQL语句的可视化工具查询设计视图。那么,通过在查询设计视图中的一系列操作后,所生成的SQL语句到底是什么样的?为了看到一个查询所对应的SQL语句,可以将查询设计视图转换到SQL视图中来观察。单击查询设计视图中菜单栏上的【视图】|【SQL视图】,即进入SQL视图中。由图4-5查询设计视图转换到SQL视图中后,所看到的SQL语句如下:查询对象的实质第23页/共136页SELECT 销售数据记录.货号,销售数据记录.货名,销售数据记录.销售单价,销售数据记录.销售数量 FROM 销售数据记录WHERE(销售数据记录.销售单价)=5)ORDER BY 销售数据记录.销售数量 DESC;第24页/共136页 可以看出:查询对象的实质是一条SQL语句。打开查询的操作也就是运行相应SQL语句的过程,其结果是生成一个动态数据集合。这个动态数据集合,无论在形式上还是在所能接受的操作上,都如同一个数据表对象。这就是说,在数据表视图中所能进行的所有操作均能在查询视图中实施。如果查询视图数据来源于若干个数据表,则可以在查询视图中同时操作这若干个表中的数据,在一定的限定条件下,也可以同时对这些数据表进行追加记录、删除记录和更改数据的操作。第25页/共136页 SQL一词,是Structure Query Language的缩写,即“结构化查询语言”的英文缩写。当今的所有关系型数据库管理系统都是以SQL作为核心的。SQL概念的建立起始于1974年,随着SQL的发展,ISO、ANSI等国际权威标准化组织都为其制订了标准,从而建立了SQL在数据库领域里的核心地位。第26页/共136页SQLSQL的四个特点的四个特点(1)在方法上的突破:SQL不再局限于数据表中的记录与字段,而是通过设定表与表间的联接来组合地处理数据。(2)容易学习与维护:SQL语句自然语言,简洁直观,语句的功能非常强大,一条语句时常可以取代常规程序设计语言的一大段程序,因而容易维护。(3)语言共享:任意一种数据库管理系统都拥有自己的程序设计语言,其各种语言的语法规定及其词汇相差甚远。但是SQL在任何一种数据库管理系统中都是相似的,甚至是相同的。(4)全面支持客户/服务器结构:实现异种数据库间的数据共享,即在客户端使用的数据访问语言必须与服务器端所能识别数据查询语言相同。SQL就是当今唯一的一个已经形成标准的数据库共享语言。第27页/共136页SQLSQL语句按其功能的不同可以分语句按其功能的不同可以分为以下六大类为以下六大类 数据定义语句(DDL,Data-Definition Language)数据操作语句(DML,Data-Manipulation Language)操作管理语句(TMLT,transaction-Management Language)数据控制语句(DCL,Data-Control Language)数据查询语句(DQL,Data-Query Language)游标控制语句(CCL,Cursor-Control Language)第28页/共136页SELECT语句的一般语法格式为:SELECT predicate *|table.*|table.field1 AS alias1,table.field2 AS alias2,.FROM tableexpression,.IN externaldatabaseWHERE.GROUP BY.HAVING.ORDER BY.WITH OWNERACCESS OPTION 1 1、SELECTSELECT语法语法 第29页/共136页在SELECT语法格式中,大写字母为SQL保留字,方括号所括部分为可有可无的内容,小写字母为语句参量。各项语句参量应该根据实际应用的需要取值,表4-1所列为SELECT语句中各个参量说明。2 2SELECTSELECT语法简要说明语法简要说明 第30页/共136页表表4-1 4-1 SELECTSELECT语句参量说明语句参量说明 参量取值及其含义说明Predicate下列谓词之一:ALL、DISTINCT、DISTINCTROW、TOP可用谓词来限制返回的记录数量。默认值为 ALL*全部字段从特定的表中指定全部字段Table表的名称Field1字段的名称包含所要获取的数据Alias1字串常量用来作列标头Tableexpression表的名称这些表包含要获取的数据Externaldatabase数据库的名称该数据库包含 tableexpression 中的表WHERE条件表达式只筛选满足条件的记录GROUP BY.字段名列表根据所列字段名分组ORDER BY字段名列表根据所列字段名排序第31页/共136页 关闭查询设计视图,在随之出现的“保存”对话框中指定查询对象名称,然后确定之。对于一个设计完成的查询对象,可以在数据库视图中的查询对象选项卡上看到它的图标,用鼠标在一个查询对象图标上双击,即可运行这个查询对象。一个运行着的查询一般以查询视图的形式显示。在数据库视图中,单击查询对象选项卡,选择需要打开的查询对象,单击数据库视图上的“打开”按钮“”,或双击需要打开的查询对象图标,即进入查询视图。运行查询对象第32页/共136页 图4-7所示即为上述“销售数据记录查询举例”对象打开后的视图。可以看到,查询视图与数据表视图是形式完全相同的视图,不同的是查询视图中显示的是一个动态数据集。对于本例,仅是“销售数据记录”表中的销售单价不低于5元的那一部分商品数据按照其销售数量的大小降序排列而成。第33页/共136页图4-6 “销售数据查询1”对象的查询视图第34页/共136页4.2 基本选择查询设计选择查询是最常见的查询类型,它从一个或多个的表中检索数据,并且允许在可以更新记录(带有一些限制条件)的数据表中进行各种操作数据。也可以使用选择查询来对记录进行分组,并且对记录作总计、计数、平均以及其他类型总和的计算。选择查询的优点在于能将多个表或查询中的数据集合在一起,或对多个表或查询中的数据执行操作。第35页/共136页4.2 基本选择查询设计选择查询设计视图基表联接的意义排序行和显示行的作用条件行的作用及其设计方法零售商店管理信息系统”中的选择查询设计第36页/共136页 选择查询的设计视图如图4-4所示,被分为上下两个部分。上部为数据源显示区;下部为参数设置区,由五个参数行组成,分别是字段行、表行、排序行、显示行和准则行。查询对象基于数据源而生成,且数据源往往不仅仅只有一个,这些数据源既可以是数据表对象,也可以是查询对象。设计具有多个数据源的查询对象,需在“显示表”对话框(如图4-3所示)中逐一将各个数据源添加至查询设计视图的数据源列表区内。若在关闭“显示表”对话框后,还需添加数据源,可在数据源列表区内右击鼠标,在随之弹出的快捷菜单上单击【显示表】,或在查询设计视图菜单栏上单击【视图】|【显示表】,均可再现“显示表”对话框,参见图4-3。第37页/共136页 在查询设计视图中,选择确定多个数据源(表或查询)后,必须保证各个数据源数据间存在必要的联接关系。表与表间的联结如果已在数据库视图中通过建立表间关系形成,则这些关系将被继承在查询设计视图中。如果上述关系不存在,则必须在查询设计视图中指定,如此指定的关系仅在本查询中有效。第38页/共136页 在查询设计视图中指定表间关系的操作为,从作为数据源的表或查询字段列表中将一个字段拖到另一个作为数据源的表或查询字段列表中的相等字段(即具有相同或兼容的数据类型且包含相似数据的字段)上,即完成了两个数据源之间的联接。所谓将一个字段拖到另一个字段上,是指用鼠标指向一个字段,然后按住鼠标左键拖曳至另一个字段上,然后放开鼠标左键。使用这种方式进行联接,只有当联接字段的值相等时,Access才会从两个表或查询中选取记录。图4-8所示为销售数据记录查询中含有“进货单价”以及销售利润数据的设计参数。第39页/共136页图4-7 查询数据源设定与字段显示格式设定第40页/共136页 在图4-8中可以看到,由于这个查询的数据分别取自“库存数据记录”表和“销售数据记录”表,因此必须指定这两个数据源,这两个数据源称为本查询的基表。基表之间必须建立联接,且其联接字段必须具有相同类型。如果已经在数据库设计视图指定了两个基表的联接,则在查询设计视图中会得到继承。如果未在数据库设计视图指定两个基表的联接,则在查询设计视图中指定的联接仅在本查询中有效。第41页/共136页 Access支持的联接类型有三种:只包含来自两个表的联接字段相等处的行;包括所有“主表”的记录和那些联接字段相等的“从表”的记录;包括所有“从表”的记录和那些联接字段相等的“主表”的记录。关于表对象联接概念中的“主表”和“从表”的含义,请参阅第三章中的相关内容。在上述三种联接类型中,第一种联接类型是默认类型。上述实例采用第一种联接类型,即只显示在“库存数据记录”和“销售数据记录”中均存在的记录,如图4-9所示。第42页/共136页图4-8 “销售数据明细查询”的查询视图第43页/共136页排序行和显示行的作用1排序的作用与设计方法 2显示行的作用与设计方法 第44页/共136页 如同在第三章中所述,排序可以令某一列数据有顺序的排列,便于查看。在设计查询对象时,若需要哪一列数据有顺序的排列,可单击位于该列排序行上的下拉式列表框,从中选择所需的排序种类,如图4-6所示。1 1排序的作用与设计方法排序的作用与设计方法 第45页/共136页 在查询设计视图中,显示行内是一个复选框。如果希望某一字段的数据在查询运行时得到显示,则在该复选框中单击,使其显示有“”符号,这也是Access的默认参数;如果希望某一字段的数据在查询运行时不显示,但又需要它参与运算,则在该复选框中单击,使其中的“”符号消失。对于既不需要显示,也不需要参与运算的字段,根本就不要将其选入查询中。2 2显示行的作用与设计方法显示行的作用与设计方法 第46页/共136页 设定准则恐怕是设计查询对象时最为困难的操作。如果需要给定某种条件来筛选数据记录,就必须要设定准则了。即,准则是为筛选数据记录设定的条件,条件必须是一个合法的VBA关系或逻辑表达式。VBA语句及其表达式等内容留待第五、九章介绍,本小节介绍利用向导设定准则的操作方法。条件行的作用及其设计方法第47页/共136页 在查询设计视图中,令光标停留在需要设定准则的字段中的准则行内,单击查询设计视图工具栏上的“向导”工具按钮“”,即弹出“表达式生成器”对话框,如图4-10所示。准则的设定可以在这个对话框中操作完成。第48页/共136页 例如,如果希望查看其销售利润位于1元至5元之间的那些商品的销售数据,就应该在“销售利润”列的准则行内输入“Between 1 And 5”这样的VBA表达式。这样的表达式可以在准则行中直接输入,但不如在“表达式生成器”对话框中操作生成,请参阅图4-10中的图示。第49页/共136页图4-9 应用“表达式生成器”设定查询准则第50页/共136页 在“表达式生成器”对话框中,双击对话框左下方列表框中的“操作符”,在随之出现的中下方列表框中选择“比较”,在对话框右下方的列表框中双击“Between”选项,对话框上端的文本框中即出现“Between 表达式1 And 表达式2”字样。这表明,本表达式使用“Between”操作符。“Between”是一个双元操作符,需要为其确定两个操作数。单击“表达式1”后,在此处输入1,即输入了第一个操作数;再单击“表达式2”,在此处输入5,即输入了第二个操作数。此时可以看到输入的表达式为“Between 1 And 5”。表达式输入完毕后,单击对话框上的“确定”按钮“”,对话框消失。查询设计视图中对应准则行上的表达式就生成了。接着,可以打开这个查询对象,与前述查询对象打开时的显示数据进行比较,观察该准则的作用。也可以在查询设计视图中切换至SQL视图,仔细观察对应的SQL语句。第51页/共136页数据库应用系统的实际应用总是根据需求进行的,设计查询对象应该包括哪些字段、以哪种顺序排列以及筛选条件如何确定,等等,都应该根据需求分析来决定。尤其是在筛选条件准则中,常常不能使用常量,而需使用变量,且这些变量的赋值又往往是用户在窗体上操作时输入的。因此,查询准则中的条件表达式常常包含着变量。零售商店管理信息系统”中的选择查询设计第52页/共136页图4-10 “库存数据记录查询”的属性设置第53页/共136页图4-10所示查询对象所对应的SQL语句为:SELECT 销售数据记录.货号,销售数据记录.货名,销售数据记录.规格,销售数据记录.计量单位,销售数据记录.销售单价,销售数据记录.销售数量,销售数据记录!销售单价*销售数据记录!销售数量 AS 销售金额,销售数据记录.销售日期,销售数据记录.销售人员FROM 销售数据记录WHERE(销 售 数 据 记 录.销 售 日 期)=Forms!销 售 数 据 录 入!Text29)AND(销售数据记录.销售人员)=Forms!销售数据录入!Combo45);第54页/共136页图4-11 “柜存数据记录查询”的属性设置第55页/共136页“柜存数据记录查询”对象所对应的SQL语句为:SELECT 柜存数据记录.货号,柜存数据记录.货名,柜存数据记录.规格,柜存数据记录.计量单位,柜存数据记录.销售单价,柜存数据记录.柜存数量,柜存数据记录!销售单价*柜存数据记录!柜存数量 AS 柜存金额,柜存数据记录.上柜日期,柜存数据记录.上柜人,柜存数据记录.营业员FROM 柜存数据记录;第56页/共136页图4-12 “销售数据记录查询”的属性设置第57页/共136页“销售数据记录查询”对象所对应的SQL语句为:SELECT 销售数据记录.货号,销售数据记录.货名,销售数据记录.规格,销售数据记录.计量单位,销售数据记录.销售单价,销售数据记录.销售数量,销售数据记录!销售单价*销售数据记录!销售数量 AS 销售金额,销售数据记录.销售日期,销售数据记录.销售人员FROM 销售数据记录WHERE(销售数据记录.销售日期)=Forms!销售数据录入!Text29)AND(销售数据记录.销售人员)=Forms!销售数据录入!Combo45);第58页/共136页4.3 实用选择查询设计选择查询是Access支持的多种类型查询对象中最重要的一种,它不仅仅可以完成数据的筛选、排序等操作,更常见的用途还在于它的计算功能、汇总统计功能以及接受外部参数的功能。同时,选择查询还是其他类型查询创建的基础。在后续各节中我们会看到,为了创建其他类型的查询,常常会先建立一个选择查询,然后再逐步进行设计修改,以达到实现相关类型查询的设计结果。第59页/共136页4.3 实用选择查询设计“零售商店管理信息系统零售商店管理信息系统”中的中的汇总查询设计汇总查询设计第60页/共136页 通过查询操作完成基表内部或各基表之间数据的计算,是建立查询对象的一个常用的功能。完成计算操作是通过在查询对象中设计计算查询列实现的,当查询运行时,计算查询列就如同一个字段一样。计算查询列本质上是一个计算表达式,设置计算查询列的操作可以借助于向导在“表达式生成器”对话框中完成。令光标停留在需要设置计算查询列的“字段”行上,单击查询设计视图工具栏上的“向导”工具按钮“”,即弹出“表达式生成器”对话框,如图4-10所示。与设定查询准则的逻辑表达式不同,计算查询列上是一个计算表达式。计算查询列设计第61页/共136页 图4-8中所示的“销售利润”列就是一个计算查询列,在这一列的“字段”行中填入的内容为:销售利润销售利润:销售单价销售单价*销售数量销售数量-进货单进货单价价*销售数量销售数量 这个计算表达式分为用冒号隔开的两个部分。冒号右边是一个VBA算术表达式,它的含义是用本查询中的“销售单价”与“销售数量”两个字段的数据之积,减去本查询中的“进货单价”与“销售数量”两个字段的数据之积。字段名均用方括号括起来,这属于VBA的语法规则,必须遵循。由于所用字段都是本查询中的字段,因此不用指明其父类,否则,需写成:表名!字段名。所用到的算术运算符与其他程序设计语言使用的算术运算符相同。第62页/共136页 冒号左边将等同于字段名,本例中设定为“销售利润”。如果使用向导,在“表达式生成器”对话框中完成计算表达式的设计,Access将用“表达式1”作为第一个计算查询列的字段名,并依次为后续的计算查询列命名字段。一般情况下,人们都不会满意将字段名命名为“表达式1”这样的形式。这就需要自己来重新给字段命名。为此,可以在“表达式生成器”对话框中完成计算表达式的设计后,单击确定按钮退回查询设计视图后,再将“表达式生成器”自行确定的“表达式1”修改为“销售利润”。其操作方法是,鼠标单击字段行中的“表达式1”,再删除该字段行中位于计算表达式冒号左侧的字符,并输入所希望的字符串。第63页/共136页 还可以设计计算查询列中数据的显示格式。其操作方法是,在需要重新设置显示格式的计算查询列“字段”行处右击鼠标,在随之弹出的快捷菜单上单击【属性】;或令光标停留在需要设置显示格式的计算查询列“字段”行上,在查询设计视图的菜单栏上单击【视图】|【属性】(或单击查询设计视图工具栏上“属性”工具按钮“”)。即弹出“字段属性”对话框,如图4-12所示。在“字段属性”对话框中,即可为所选字段设置包括显示格式在内的各项字段属性。图4-12所示,是将“销售数据记录查询”的“销售利润”计算查询列的显示格式设置为货币格式的参数设置操作示例。第64页/共136页 设计汇总查询也是在查询设计视图中进行。在查询设计视图打开一个已经建立的选择查询对象,在工具栏上单击“汇总”按钮“”。这时,在查询设计视图下部的参数设置区中将增加一个名为“总计”的行,其间参数均为“Group By”。“总计”行中的参数标明各字段是属于分类字段(Group By)还是汇总字段(Expression),一个汇总查询至少应有一个分类字段和一个汇总字段。汇总查询设计第65页/共136页 以“销售业绩查询”为例,如果希望得到以“货名”、“规格”、“进货单价”和“销售单价”三个字段作为分类字段的“销售数量”和“销售利润”两个字段的汇总数据,则应将“货名”、“规格”、“进货单价”和“销售单价”四个字段均设置为分类字段,而将“销售数量”和“销售利润”两个字段都设置为汇总数据。图4-13所示即为相关设计参数。三个分类字段可以采用讲述的设定字段名的方法设定,且“总计”行参数不用修改。两个汇总字段可采用节讲述的设定计算字段的方法设定,且“总计”行参数会自动根据所设立的计算表达式而改为“Sum”或“Expression”。第66页/共136页图4-13 “销售利润明细查询”的总计属性设计第67页/共136页图4-13所示查询对象所对应的SQL语句为:SELECT 库存数据记录.货名,库存数据记录.规格,库存数据记录.进货单价,销售数据记录.销售单价,Sum(销售数据记录!销售数量)AS 销售数量,销售单价*销售数量-进货单价*销售数量 AS 销售利润FROM 库存数据记录 INNER JOIN 销售数据记录 ON 库存数据记录.货号=销售数据记录.货号GROUP BY 库存数据记录.货名,库存数据记录.规格,库存数据记录.进货单价,销售数据记录.销售单价;第68页/共136页 此处所指的参数特指查询准则中使用的变量,参数查询对象则是指本查询对象所使用的参数需由数据库中其他对象赋值方能运行的查询。以节提到的需求为例。一般会希望针对某一个时间段内的销售数据进行汇总统计,而这个时间段又应该由数据库应用系统的使用者在他的操作中输入。假定输入这个时间段的操作是在一个称为“销售业绩查询汇总”的窗体中进行,则相应的“销售业绩查询”参数设置如图4-14所示。其中准则表达式为:Between Forms!销售业绩查询汇总!Text29 And Forms!销售业绩查询汇总!Text67)参数查询设计第69页/共136页 其含义是:销售日期起于“销售业绩查询汇总”窗体中“Text29”文本框中输入的起始日期,而终于“销售业绩查询汇总”窗体中“Text67”文本框中输入的终止日期。它导致的运行结果就是筛选出在这个日期段内的销售数据记录。第70页/共136页图4-14 “销售利润明细查询”的条件属性设计第71页/共136页图4-14所示查询对象所对应的SQL语句为:SELECT 销售数据记录.销售日期,库存数据记录.货号,库存数据记录.货名,库存数据记录.规格,库存数据记录.计量单位,库存数据记录.进货单价,库存数据记录.库存数量,销售数据记录.销售单价,Sum(销售数据记录.销售数量)AS 销售数量,Sum(销售数据记录!销售单价*销售数据记录!销售数量)AS 销售金额,销售单价*销售数量-进货单价*销售数量 AS 销售利润,销售数据记录.销售人员第72页/共136页FROM 库存数据记录 INNER JOIN 销售数据记录 ON 库存数据记录.货号=销售数据记录.货号GROUP BY 销售数据记录.销售日期,库存数据记录.货号,库存数据记录.货名,库存数据记录.规格,库存数据记录.计量单位,库存数据记录.进货单价,库存数据记录.库存数量,销售数据记录.销售单价,销售数据记录.销售人员HAVING(销 售 数 据 记 录.销 售 日 期)Between Forms!销 售 业 绩 查 询 汇 总!Text29 And Forms!销 售 业 绩 查 询 汇 总!Text67)ORDER BY 销售数据记录.销售日期;第73页/共136页 1“销售结转清查询”设计“零售商店管理信息系统”数据库中的“销售结转清查询”对象设计如图4-15所示。“零售商店管理信息系统”中的汇总查询设计第74页/共136页图4-15 “销售结转清查询”的各项属性设计第75页/共136页图4-15所示查询对象所对应的SQL语句为:SELECT 柜存数据记录.货号,柜存数据记录.货名,柜存数据记录.规格,柜存数据记录.计量单位,柜存数据记录.柜存数量,柜存数据记录.销售单价,Sum(销售数据记录.销售数量)AS 销售数量,Sum(销售数据记录!销售单价*销售数据记录!销售数量)AS 销售金额,销售数据记录.销售日期,销售数据记录.销售人员第76页/共136页FROM 柜存数据记录 INNER JOIN 销售数据记录 ON 柜存数据记录.货号=销售数据记录.货号GROUP BY 柜存数据记录.货号,柜存数据记录.货名,柜存数据记录.规格,柜存数据记录.计量单位,柜存数据记录.柜存数量,柜存数据记录.销售单价,销售数据记录.销售日期,销售数据记录.销售人员HAVING(销 售 数 据 记 录.销 售 日 期)=Forms!交接班结转清!Text29)AND(销售数据记录.销售人员)=Forms!交接班结转清!Combo45)ORDER BY 柜存数据记录.货号;第77页/共136页2“销售业绩查询”设计“零售商店管理信息系统”数据库中的“销售业绩查询”对象设计如图4-16所示。第78页/共136页图4-16 “销售业绩查询”的各项属性设计第79页/共136页图4-16所示“销售业绩查询”对象所对应的SQL语句为:SELECT 销售数据记录.销售日期,库存数据记录.货号,库存数据记录.货名,库存数据记录.规格,库存数据记录.计量单位,库存数据记录.进货单价,库存数据记录.库存数量,销售数据记录.销售单价,Sum(销售数据记录.销售数量)AS 销售数量,Sum(销售数据记录!销售单价*销售数据记录!销售数量)AS 销售金额,销售单价*销售数量-进货单价*销售数量 AS 销售利润,销售数据记录.销售人员第80页/共136页FROM 库存数据记录 INNER JOIN 销售数据记录 ON 库存数据记录.货号=销售数据记录.货号GROUP BY 销售数据记录.销售日期,库存数据记录.货号,库存数据记录.货名,库存数据记录.规格,库存数据记录.计量单位,库存数据记录.进货单价,库存数据记录.库存数量,销售数据记录.销售单价,销售数据记录.销售人员HAVING(销售数据记录.销售日期)Between Forms!销售业绩查询汇总!Text29 And Forms!销售业绩查询汇总!Text67)ORDER BY 销售数据记录.销售日期;第81页/共136页4.4 更新查询设计4.4.4.14.1、更新查询的作用、更新查询的作用 4.4.4.24.2、更新查询的设计、更新查询的设计 4.4.4.34.3、更新查询的实质、更新查询的实质 第82页/共136页 如果需要对数据表中的某些数据进行有规律地成批更新替换操作,就可以使用更新查询来实现。如果读者曾经学习过xBase一类的数据库系统工具,可以理解为:Access 2003中的更新查询相当于xBase中的Replace语句的功能。例如,现需要在CMMIS数据库中将所有商品的销售单价高于6元的那些商品的销售单价下调10%,如果在数据表视图中采用手工操作,将是一件不可思议的事情。设计一个更新查询就可以很方便地完成这样的操作。4.4.4.14.1、更新查询的作用、更新查询的作用 第83页/共136页 首先,创建一个选择查询,指定其数据源为需要更新其中数据的表对象。接着,将其中需要更新数据的字段逐一拖曳至查询设计视图的“字段”行中。然后,单击菜单栏上的【查询】|【更新查询】,可以看到在查询设计视图中新增一个“更新到”行。此时,需要在该行中填入数据更新的规则,例如“销售单价*0.9”。如果只是需要更新某些满足一定条件的记录中的数据,则应该在查询设计视图的“Where”行中填写记录更新条件,例如“销售单价6元”。最后,保存这个查询对象,即完成了一个更新查询对象的设计操作。只需运行该查询对象,数据源表中的相关数据就按照数据更新规则得到了更新。4.4.4.24.2、更新查询的设计、更新查询的设计 第84页/共136页 首先,创建一个选择查询,指定其数据源为需要更新其中数据的表对象。接着,将其中需要更新数据的字段逐一拖曳至查询设计视图的“字段”行中。然后,单击菜单栏上的【查询】|【更新查询】,可以看到在查询设计视图中新增一个“更新到”行。此时,需要在该行中填入数据更新的规则,例如“销售单价*0.9”。如果只是需要更新某些满足一定条件的记录中的数据,则应该在查询设计视图的“Where”行中填写记录更新条件,例如“销售单价6元”。最后,保存这个查询对象,即完成了一个更新查询对象的设计操作。只需运行该查询对象,数据源表中的相关数据就按照数据更新规则得到了更新。第85页/共136页 新建一个选择查询,指定数据源为“柜存数据记录”表,将“柜存数据记录”表中字段“销售单价”拖曳至“字段”行中,单击菜单栏上的【查询】|【更新查询】。在“更新到”行中输入计算更新规则“柜存数据记录!销售单价*0.9”,在“准则”行中输入计算更新条件“6”(当然也可以应用向导完成这两行的规则输入操作)。图4-28所示为“销售单价_更新查询”的设计参数。第86页/共136页图4-17 “销售单价_更新查询”设计参数第87页/共136页 设计完成一个更新查询后,就可以打开它。与打开选择查询对象

    注意事项

    本文(零售商店数据库应用系统GrocerMIS实例分析 .pptx)为本站会员(莉***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

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

    收起
    展开