《Access 2007开发指南(修订版)》一一1.2 Access中可开发的应用程序类型

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

1.2 Access中可开发的应用程序类型

Access 2007开发指南(修订版)
对于用Access可以开发什么类型的应用程序这个问题,笔者已经解答过很多次了。Access提供了大量的功能,它可以满足不同的数据库要求。它可以用于开发以下6种类型的应用程序:

个人应用程序;
小型商务应用程序;
部门级应用程序;
公司级应用程序;
作为企业级客户/服务器应用程序的前端程序;
Intranet/Internet应用程序。

1.2.1 Access作为个人应用程序开发平台

Access可以用于开发简单的个人数据库管理系统。虽然人们也许都会注意这一点。但是,那些购买了Access,并希望它能自动完成从葡萄酒收集到家庭理财的每件事情的人会感到大失所望。问题就在于Access的应用看起来简单了点,其功能强大的内置向导使它看上去能被每个人很好地使用。回答几个问题之后,就可以完成应用切换面板、数据输入屏幕、报表及支持它们的基本表。实际上,当Microsoft公司刚刚发布Access的时候,许多人曾问过,说作为一个计算机编程人员和培训人员是否已经失去了意义。因为有了Access,好像谁都可以很容易地编写出数据库应用程序,虽然实际上也是如此。最简单的Access应用程序并不需要用户作什么设计,也不需要用户编写什么代码,但是,大多数应用程序还是要求有所设计,并要求自行编码。

如果仅仅满足于由向导生成的个人应用程序,不作任何修改,那么不会出现什么问题。如果要完全自行设计个人应用程序,那么就还有很多事情要做。

1.2.2 Access作为中小型企业应用程序开发平台

对于开发运行中小型企业系统的应用程序来说,Access是一个较好的平台。它的向导有助于开发人员快速且轻松地构造出应用程序的框架。由于它支持代码模块,因此,开发人员很容易建立可重用函数的代码库。又由于它支持在窗体和报表之后添加代码,因此,它具有强大的窗体和报表自定义功能。

用Access开发自定义的中小型企业应用程序的唯一限制在于开发过程所要求的时间和费用。许多人在开发过程开始时,总喜欢使用Access的向导,但是到后来,他们发现这样做又不能完全按要求进行自定义。随着规模的扩大,中小型企业应用程序的用户更会发现这个问题的严重性。中小型企业应用程序的要求一般比个人应用程序的要求更高。许多医生、律师和其他专业人士在开发过程中进入死胡同时向我求救,这时他们才会清楚,要让他们的程序能运行需要花多少费用。

1.2.3 Access作为部门管理应用程序开发平台

对于一些大型公司的各个部门来说,用Access开发应用程序是非常合适的。在一个部门内部,要想升级到适当的硬件,相对来说比较容易。例如,为15个人购买内存比为4000个人购买容易得多。而且它的性能对部门管理应用程序来说已经足够了,这里不需要什么客户/服务器技术。最后,大型公司的多数部门预算一般比较多,也就是说,开发良好的应用程序在费用上不成问题。

幸运的是,绝大多数部门均有计算机方面的行家里手,他们乐于帮助设计窗体和报表。这样,各个部门在开发应用程序上具有一定的主动性。而且,这对开发人员来说也轻松得多。对于笔者来说,也就只须考虑一些纯粹开发上的问题,而把窗体和报表的设计留给行家去做。

1.2.4 Access作为公司管理应用程序开发平台

Access不仅适合于开发部门管理的应用程序,还可以用于开发分布到整个单位的应用程序。当然,这也要视具体的公司而定。这时,要想具有可接受的性能,同时共享Access应用程序的数量会受到限制;而且,要想不出现重大的操作问题,每个表所含有的记录数也要受到限制。这些数量上的限制与以下几个因素有关:

现在网络上的通信量如何;
服务器的RAM和处理器资源有多少;
服务器使用情况如何,例如,像Microsoft Office这样的应用程序是装载在服务器上,还是装载在本地工作站上;
应用程序的用户正在执行何种任务,他们是在查询、输入数据、运行报表,还是在做其他工作;
Access及Access应用程序在哪个平台上运行(是服务器还是工作站);
网络操作系统安装在何处。
对不是基于客户/服务器的Access应用程序来说,根据笔者的经验,在同时使用的用户超过10~15个、记录添加到超过100 000条时,性能将变差。请记住,这个数字根据以上所提及因素的不同而有所变化,每个开发人员和每个用户对可接受的性能这个词的定义也是不同的。第22章将讲述什么时候使用客户/服务器数据库。也是由Sams出版的另一本书《Alison Balter’s Matering Access 2000 Client/Server Development》,介绍了有关这个主题的详细内容。

许多开发人员经常搞不懂Access本身与它用于客户/服务器数据库平台之后两者间的区别。常有人问我:“Access不是客户/服务器吗?”回答是这样的,Access这个产品的不寻常之处就在于,它不仅是一个文件服务器应用程序,它还可以作为客户/服务器数据库的前端。如果还是不明白,那么可按如下说明理解:当购买了Access之后要开发这么一个应用程序,此应用程序用于将数据存储到Access数据库中的文件服务器中,而且所有的数据处理都是在工作站上完成的。这就意味着,在用户每次运行查询和报表的时候,所有数据都要导入工作站。导入之后,查询就会在工作站上运行,结果则以数据表或报表的形式显示。这个过程将产生大量的网络通信量,如果有多个用户同时对一个大型的Access表运行报表和查询,则更是如此。实际上,这种操作将使网络速度慢如蜗牛。

1.2.5 Access作为企业级客户/服务器应用程序的前端

客户/服务器数据库(比如说Microsoft公司的SQL Server和Oracle)是在服务器上处理查询,然后将结果送回给工作站。服务器软件本身并不能将数据显示给用户,这是Access的任务。作为一个前端,Access可以从数据库服务器中检索数据,并且以报表、数据表或者窗体的形式显示。如果用户在Access窗体中对数据做了更新,这个更新可以送回给后端数据库。要想做到这一点,可以通过与这些外部数据库进行链接,以使它们作为Access表显示给开发人员和用户,也可以直接使用访问客户/服务器数据的技术。

因为Access 2007装载了集中数据存储(SQL Server2005 Express版的数据库引擎),所以可以在桌面上开发一个客户/服务器应用程序,然后轻松地将它部署到企业SQL Server数据库中。第22章简短地介绍了开发客户/服务器应用程序所需的选择和技巧。《Alison Balter’s Matering Access 2000 Client/Server Development》一书讲述了有关如何开发Access工程的详细内容。

将查询处理移到后端,可以大大减少网络通信量,这样,Access这个开发解决方案也显得越发强大。这时它可以处理大量的数据,而且可以同时应付很多并发用户。开发这种大型的Access应用程序时,开发人员通常要面对如下的主要问题:

用户所用操作系统的种类;
展开的困难;
用户使用哪种方式连接应用程序和数据;
用户使用的硬件类型。
虽然说客户/服务器应用程序中的查询处理是在服务器上进行的,这确实大大地减少了网络通信量,但是,应用程序本身仍然驻留在各个用户的计算机上。这意味着每个客户端机器必须能够运行合适的操作系统及正确版本的Access。即使应用了正确的操作系统和Access,问题仍然没有解决。在Access应用程序中,动态链接库(DLL)冲突经常导致用户很难诊断的错误及怪异的反应。并且,对于分离的用户,他们必须通过Internet访问应用程序和它的数据,因此,Access就不是最好的解决方法。最后,Access 2007对硬件有严格的要求。这一章后面将介绍Access应用程序对硬件的要求。在决定配置这种大型的Access应用程序之前,必须弄清楚自己系统中各个用户的硬件和软件配置。还必须知道典型的Access应用程序所需的桌面支持是否适合给定的用户数,这些用户将使用要创建的系统。

1.2.6 Access作为Intranet/Internet应用程序开发平台

使用数据访问页,可以用静态HTML页和动态HTML页发布数据库对象。静态页是标准的HTML,它可以使用任何一个浏览器浏览。Access 2000引入了从Jet或SQL Server结构及数据中创建XML数据和图表文档的能力,还可以从XML文档中将数据和数据结构导入到Access中。使用代码或者通过用户界面都可以完成这项任务。

注意

本书介绍了Internet相关功能的内容,例如操作HTML和XML文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值