《Access 2007开发指南(修订版)》一一1.5 什么是数据库对象

简介:

本节书摘来自异步社区出版社《Access 2007开发指南(修订版)》一书中的第1章,第1.5节,作者: 【美】Alison Balter,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.5 什么是数据库对象

Access 2007开发指南(修订版)
正如前面所提及,Access的数据库由表、查询、窗体、报表、宏和模块组成。这些对象都有自己特定的功能。Access环境还包括好几个杂项对象,包括关系、数据库属性和导入/导出规格。有了这些对象,就可以创建功能强大的、用户友好的集成应用程序。图1.1所示的是Access的应用程序窗口。请注意,在“导航窗格”中列出的对象类别。以下各节对Access数据库的各个对象进行解释。
image

1.5.1 表:数据的仓库

表是应用程序的起点。不管是将数据存储在Access数据库中,还是使用链接表引用外部数据,数据库中所有其他对象都对表进行了直接或间接的引用。

要想查看一个已打开的数据库中的各个表,应从“导航窗格”下拉列表中选择“表”,如图1.2所示(请注意,这里看不到任何隐藏的表,要查看隐藏的表,必须在“导航选项”对话框中选择“隐藏对象”复选框,如图1.3所示)。如果要查看某个表中的数据,应双击要浏览的表名。

image

image

Access将表中的数据以数据表的形式显示,其中包括了表中的所有字段和记录(如图1.4所示)。注意,图中折叠了“导航窗格”,这样可使用户更好地查看表(该技巧会在本章后面介绍)。可以修改数据表的诸多属性,甚至还可以对数据表内的数据进行查找和筛选。如果某表与另外的表进行了链接(如罗斯文的客户表和订单表),就可以打开或折叠子数据表,用以查看存储在子表中的数据。这些简单的技巧不会在这本书中介绍,Access的用户手册或其他介绍关于Access的图书对此已经做了介绍,例如《Sams Teach Yourself Microsoft Office Access 24 Hours》。

image

作为开发人员,经常要查看表的设计,它是表的蓝本,也可以说是模板。为了查看表的设计,应该在打开表后单击功能区开始页面上的“视图”图标(见图1.5)。在设计视图内,可以查看和修改所有的字段名、数据类型以及字段和表的属性。在Access中,用户具有自定义表的设计能力和灵活性,第2章将讲述这些内容。

image

关系:连接表
为了较好地维护数据的完整性并简化与数据库内其他对象的操作过程,必须在数据库中的表之间定义关系。通过使用“关系”窗口可以完成这项任务。为了浏览“关系”窗口,应该选择“数据库工具”选项卡,然后在“显示/隐藏”组中选择“关系”按钮,此时,“关系”窗口就会出现,如图1.6所示。
image

在这个窗口中,可以查看和维护数据库中的关系。如果自己或者某个后续的开发人员已经设计了一些关系,但是在“关系”窗口中却看不到它们,那么在“设计”选项卡上的“关系”组中选择“所有关系”按钮,就可以将任何隐藏的表和关系显示出来。

请注意图1.6所示的关系,表之间的连接线上有一个数字1,还有一个无限符号(∞)。这说明在这些表之间有一个“一对多”关系。如果双击连接线,那么将出现“编辑关系”对话框(如图1.7所示)。在这个对话框中,可以指定表与表之间的准确关系。比如说,客户表与订单表之间的关系就是一对多的关系,它将执行参照完整性规则。也就是说,对于不存在的客户不能添加订单。请注意,“级联更新相关字段”这个复选框没有选中。这就意味着,用户不能更新客户表中某个客户的客户ID。由于“级联删除相关记录”这个复选框没有选中,因此,如果客户在订单表中有订单,那么它们不会从客户表中删除。

本书第3章将详细地讲述关系的定义和维护过程,还会介绍相关数据库设计的基础知识。不过,在设计过程中,要尽早地在概念和设计上认识到关系的存在。要想成功地设计和实现应用程序,它是必不可少的。

image

1.5.2 查询:存储应用到数据的问题和操作

Access的查询功能是非常强大的,并且具有多面性。利用选择查询可以对自己表中的数据进行查看、汇总和执行运算。利用操作查询可以添加、更新及删除表中的数据。为了运行查询,应该先从“导航”下拉列表中选择“查询”,然后双击要运行的查询,或者右键单击选择要运行的查询,然后单击“打开”按钮。在运行一个选择查询后,将出现一个数据表,其中包含了在查询中指定的所有字段和与查询规则相匹配的所有记录,如图1.8所示。在运行了一个操作查询后,Access就会执行指定的行为,例如新表的创建及对现有表的数据追加这样的行为。一般来说,这时的查询结果的数据会得到更新,因为查询的结果实际上是一个动态的记录集,又被称为动态集,它以表中的数据为基础。

image

当存储一个查询时,实际上只有其定义、布局或者说格式属性以及数据表存储在数据库中。Access为用户设计查询提供了直观的、界面友好的工具。图1.9显示出了“查询设计”窗口。要打开该窗口,应该在“导航”窗格下拉列表中选择“查询”,然后选中要修改的查询,并且单击鼠标右键,在弹出的快捷菜单中选择“设计”命令。图1.9中给出的查询是从采购订单、采购订单状态和采购价格总计表中选择数据(注意,查询是可以基于表和其他查询的)。它显示了采购订单表中的创建日期、供应商ID、运费、税款和其他几个字段,也显示了采购订单状态表中的状态,还显示了来自采购价格总计查询中的价格汇总。第4章和第12章将专门讲述查询。因为查询是绝大部分窗体和报表的基础,因此查询可以应用于数据库中其他对象的过程,有关查询的内容将遍布全书。

image

1.5.3 窗体:显示、修改和添加数据的手段

虽然可以在表的数据表视图中输入和修改数据,但是,这样做并不能很好地控制用户的行为,也不能很好地处理数据输入过程,而这时就需要使用窗体了。Access的窗体富有特色,而且灵活多样、功能强大。

要想浏览某个窗体,应该从“导航窗格”中选择“窗体”。然后双击想要浏览的窗体,或者右键单击需要浏览的窗体,在弹出的快捷菜单中选择“打开”命令。图1.10所示的是“窗体”视图中的一个窗体,该窗体实际上包括4个窗体,即1个主窗体和3个子窗体。主窗体显示的信息来自订单表,而子窗体显示的信息来自订单明细表和订单表。当用户一个一个地查看订单时,与订单相关联的订单明细会相应地显示出来。如果用户选择了“发货信息”和“付款信息”选项卡,就可以看见有关该订单的额外信息。

image

像表和查询一样,也可以在设计视图中查看窗体。为了查看窗体的设计,应该从“导航窗格”中右键单击该窗体,在弹出的快捷菜单中选择“设计”命令。图1.11所示的是设计视图中的订单明细窗体。请注意主窗体中的3个子窗体,第5章和第10章将专门讲述窗体。在应用程序的一些例子中应用窗体时也会介绍它。

image

1.5.4 报表:将数据整理成信息

在窗体中可以输入和编辑信息,但是在有了报表之后,就可以用打印机打印报表信息。图1.12所示的是一个预览模式的报表。要想预览某个报表,应该从“导航窗格”中右键单击该报表,然后在弹出的快捷菜单中选择“打印预览”命令,或者双击想要预览的报表。请注意报表中的颜色及其他内容,比如说列标题的阴影区域。报表像窗体一样,也是比较复杂的,不过它可以包含相当丰富的信息。

image

也许用户想象不到,也可以在设计视图中浏览报表,如图1.11所示。要查看某个报表的设计,应该在“导航窗格”中右键单击该报表,然后在弹出的快捷菜单中选择“设计视图”命令。图1.12所示的报表有好几个节,从图中可以看到报表页眉、页面页眉、主体、页面页脚和报表页脚,这里只给出了报表中许多节中的一些。就像窗体可以包含子窗体一样,报表也可以包含子报表。第6章和第11章将专门讨论报表。当它用于应用程序的一些例子中时,用户也会看到它的应用。

1.5.5 宏:使系统自动化的一种方式

Access中的宏与其他Office产品中的宏是不一样的。它们不能像在Microsoft Word或Excel中那样进行记录,也不能像应用于应用程序的Visual Basic(VBA)代码那样保存。对于许多在键盘、菜单和工具栏上手工执行的大多数任务,都可以用Access的宏来执行。宏可以提供条件,这样用户就可以在应用程序流中添加逻辑。

Access 2007中可使用嵌入式宏。嵌入式宏不是在“导航窗格”中作为单独的对象出现,而是作为它连接的对象的一部分。当修改一个嵌入式宏时,它不影响数据库中的任何其他宏或对象。因为用户可以阻止嵌入式宏执行某些潜在的不安全操作,所以它们是可以信任的(包括嵌入式宏的宏知识会在第7章中介绍)。

为了运行宏,应该在“导航窗格”中选择“宏”命令,然后右键单击想要运行的宏,在弹出的快捷菜单中选择“运行”命令。这样,Access就会执行宏的操作。要想查看宏的设计,应该在“导航窗格”中右键单击该宏,然后在弹出的快捷菜单中选择“设计视图”命令。图1.13中给出4列宏。利用第1列可以指定条件,宏内第2列的操作只有在这个操作的条件为真时才会执行,第3列显示了该行宏的参数,利用第4列可以给宏添加注释。宏设计窗口的下半部分用来指定用于选定操作的参数。在图1.13中,选定的操作是OpenForm,它接收6个参数,即“窗体名称”、“视图”、“筛选名称”、“Where条件”、“数据模式”和“窗口模式”。

image

1.5.6 模块:应用程序开发过程的基础

模块(Modules)是任何一个应用程序的基础,利用它可以建立函数库,并将其用于整个应用程序之中。模块一般是由子程序和函数构成的。函数通常要返回一个值,而子程序则不会。通过使用代码模块可以做以下工作:

执行错误处理;
声明和使用变量;
遍历和操作记录集;
调用Windows API和其他库函数;
创建和修改系统对象,如表和查询;
执行事务处理;
完成许多宏没有的功能;
测试和调试复杂的过程;
创建系统库数据库。
这些只是使用模块可以完成的一部分任务。为了查看一个现有模块的设计,应该在“导航窗格”中右键单击想要修改的模块,然后在弹出的快捷菜单中选择“设计视图”命令打开“模块设计”窗口,如图1.14所示。在图1.14中的全局代码模块包含通用声明节和5个函数。图中可见的函数名为CreateInvoice。第8章和第13章将对模块和VBA进行专门的讨论,不过,这本书的各章均会对它们有所论述。
image

相关文章
|
6月前
|
Oracle 安全 关系型数据库
【Oracle】玩转Oracle数据库(六):模式对象管理与安全管理
【Oracle】玩转Oracle数据库(六):模式对象管理与安全管理
82 10
|
2月前
|
SQL 关系型数据库 数据库连接
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
本文介绍了PHP中PDO(PHP Data Objects)扩展的基本概念和使用方法。内容包括PDO类和PDOStatement类的介绍,PDO的简单使用,预定义占位符的使用方法,以及PDOStatement对象的使用。文章还讨论了绑定预定义占位符参数的不同形式,即bindValue和bindParam的区别。通过具体示例,展示了如何使用PDO进行数据库连接、数据查询、数据插入等操作。
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
|
3月前
|
SQL Java 数据库连接
Hibernate 是一款开源 ORM(对象关系映射)框架,封装了 JDBC,允许以面向对象的方式操作数据库,简化了数据访问层的开发。
Hibernate 是一款开源 ORM(对象关系映射)框架,封装了 JDBC,允许以面向对象的方式操作数据库,简化了数据访问层的开发。通过映射机制,它可以自动处理对象与数据库表之间的转换,支持主流数据库,提高了代码的可移植性和可维护性。其核心接口包括 SessionFactory、Session 和 Transaction 等,通过它们可以执行数据库的 CRUD 操作。配置方面,需在项目中引入 Hibernate 及数据库驱动依赖,并创建 `hibernate.cfg.xml` 配置文件来设置数据库连接和 Hibernate 行为参数。
47 1
|
3月前
|
数据库连接 数据库
实现加载驱动、得到数据库对象、关闭资源的代码复用,将代码提取到相应的工具包里边。优化程序
该博客文章展示了如何通过创建工具类`Connectiontools`实现数据库连接、语句执行以及资源关闭的代码复用,以优化程序并提高数据库操作的效率和安全性。
|
3月前
|
存储 SQL 数据库
【计算机三级数据库技术】第7章 数据库及数据库对象--附思维导图
文章概述了数据库的创建、维护、架构、分区表、索引和索引视图的操作要点,并提供了SQL Server环境下的具体T-SQL命令示例。内容涵盖了数据库文件的管理、架构的使用、分区表的创建和优化、索引的创建与删除,以及索引视图的定义和应用场景。
33 2
|
4月前
|
SQL 关系型数据库 MySQL
云服务器 ECS产品使用问题之出现“1044 - Access denied for user ‘root‘@‘%‘ to database ‘数据库名称‘”这样的错误,该怎么办
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
3月前
|
SQL 关系型数据库 数据库
手把手教你管理PostgreSQL数据库及其对象
手把手教你管理PostgreSQL数据库及其对象
66 0
|
3月前
|
SQL 数据库
拒绝了对对象 ‘GetTips‘ (数据库 ‘vipsoft‘,架构 ‘dbo‘)的 EXECUTE 权限
拒绝了对对象 ‘GetTips‘ (数据库 ‘vipsoft‘,架构 ‘dbo‘)的 EXECUTE 权限
41 0
|
4月前
|
Oracle 关系型数据库 数据库