设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: 战士
打印 上一主题 下一主题

access 适合处理多大的数据库 ?

[复制链接]
11#
发表于 2002-9-28 21:14:00 | 只看该作者
hg:
讲一讲,优化大法吧!!
让大家瞻仰瞻仰!!
12#
发表于 2002-9-29 03:41:00 | 只看该作者
速度慢不知道跟这个有没有关系?
public.mdb         公共的数据,比如职工,部门,物料,客户
private01.mdb      部门私有数据,如财务部工资,市场部销售数据
skin01.mdb         部门私有界面,私有窗体报表查询
所有数据库都放在\\server\share\,skin00.mdb通过链接表操作数据
就是说,可能某个部门两个人同时打开skin01.mdb。
另外docmd用添加模式打开窗体(窗体数据入口设置为否)会不会比直接打开数据入口设置为是的窗体慢?
谢谢指点!
13#
发表于 2002-9-29 16:26:00 | 只看该作者
经过试验!确实在远程状态下,两个人同时打开浏览,是不会有问题的[网络必须稳定]
但一旦同时打开且同时在添加或编辑模式下输入数据,退出时就回报错!严重时机器报错!
不允许在打开!
14#
发表于 2002-9-29 18:43:00 | 只看该作者
这是我找到的!!不知道有没有用!
优化Microsoft Access提高速度
--------------------------------------------------------------------------------
2002年02月01日??来源:天极网??





介绍

作为一名数据库程序员,你的主要任务是让你的用户能快速地选择、管理和访问他们所需要的信息。其他的工作几乎都是一成不变的,只要你的数据库应用程序执行速度越快,你的程序效率越高。这篇文章的目的就是突出各种不同的技巧和策略,通过优化程序来提高速度,让你的Microsoft Access 数据库应用程序的效率更高,这样也可以帮助你完成作为一名数据库开发者的主要使命。

硬件

瞄准速度问题的根本

为了提高你的数据库程序的速度,自然而然地你会想到去注意影响速度最基本的几个部分,我们将从处理这几个部分着手。在你力图提高你的数据库程序性能的时候,你的程序所运行的硬件平台将是唯一的决定因素。显而易见,实现优化的第一条原则应该是较快的硬件=较快的数据库,当然CPU和RAM是这个等式的核心所在。相信你一定注意到Microsoft Access 所声明的,要达到一个令人满意的性能,至少需要8MB的RAM和一个80486的CPU。一般情况下,用户注意到这一点是理所应当的,但我却见过许多用户为他们的Microsoft Access 的执行速度而感到沮丧,当我问及他们使用什么机器运行此程序时,他们告诉我是一台80386,并且是在运行一台服务器上的一个MSACCESS.EXE。所以,在相信你的用户通过下面的方法固然能提高其程序性能的同时,始终需要强调的仍然是,在Microsoft Access 执行过程中,硬件才是关键的问题。

有效的磁盘访问

假定已经有了一个令人满意的硬件配置,下面让我们讨论一下如何才能提高Microsoft Access 在此平台上的运行速度。就这个问题,对你的数据库程序而言,影响其性能的第二位因素就是磁盘访问了。在执行过程中,对物理磁盘的访问总是一个速度的瓶颈(与访问存储在 RAM中的数据相比较而言),所以,你应该尽量减少对磁盘的访问。然而,由于你的应用程序总是要和一些磁盘或其他一些物理设备打交道,所以,你的目标应该是保证所有的磁盘访问都尽可能有效。要实现这一点,方法是经常整理你的磁盘数据碎片,整理你的数据库所在的磁盘驱动器以及所有你执行你的数据库程序时要涉及的磁盘驱动器,而且你还应提醒你的用户定期清理磁盘碎片,以此保证磁盘访问一直有效。这将最大程度地减少在对物理磁盘进行读写而花费的时间,尽管这些读写是不可避免的,同时优化了整个体系的性能。

使RAM最大化/对磁盘访问的频率最小化

下一个主题是使你的数据库程序与物理磁盘驱动器打交道的频率最小。要做到这一点关键是尽可能多的释放RAM空间给你的应用程序使用。要实现这一点,你需要做到以下几点:

增加最大缓冲区的尺寸

首先涉及到你对最大缓冲区尺寸的设置。最大缓冲区的尺寸指的是Microsoft Access作为内部存储空间而保留的RAM的数目。存储空间越大,用户需求的数据能在RAM中找到可能性越大,同时减少了对物理磁盘的访问频率。Microsoft Access 需要的最小缓冲区是512KB,如果你的硬件系统有多于4MB的RAM,那么你就可以为Microsoft Access 多分配一些供其使用(这样也增加了系统的性能)。要做到这一点,只需要在MSACCESS.INI(在你的windows目录下)文件中增加对最大缓冲区的设置,使用你的文本编辑器,例如记事本,在此文件中找到 [Option] 段,在其中加这样一句话:

MaxBufferSize = xxxxx

这其中的xxxxx即是为你的应用程序对存储空间分配而作的新设置(例如,设置MaxBufferSize=2048将为Microsoft Access分配2MB的缓冲区空间)。那么,你究竟应该分配多少才算合适呢?除了“尽可能多”,其他的还真难说。你需要手动地调节这个设置,同时需要试着让你的硬件都能提供以下条件:1)不能妨碍用户同时正在运行的程序,2)不会影响其自身底层操作系统的运行效率(你可能会在程序启动时想通过.INI文件查看一下Microsoft Access自身的配置,因此,任何对MSACCESS.INI文件的修改都将只能在下一次Microsoft Access启动时才能奏效,而对现在正在运行的Microsoft Access程序没有任何的影响)。

避免装载Wizards

为了释放更多的内存以供Microsoft Access使用,另一个你可以采取的步骤是:如果你不使用Wizards,那么就不要装载它。你可以打开MSACCESS.INI文件,找到[libraries]部分,在“wizards.mdb=ro”这一句之前加一个分号,这样就避免了自动加载Wizards。这样做将能够释放315B的RAM提供给Microsoft Access以作己用,这样做的好处不仅在于提高了运行时间的性能,同时使每个应用程序平均减少了大约10秒的安装时间。

解除墙纸/背景位图

解除标准windows墙纸背景可以释放RAM中任何一处25K到350K的空间。解除复杂的位图将释放更多的内存空间。

创建永久交换文件

创建一个永久交换文件(相对于临时文件而言)将增加你额外的性能。关于这一点,你可以求助于关于这方面的帮助文档,它将指导你在运行数据库应用程序的机器上创建这一文件。

到现在为止,我们已经解决了有
15#
发表于 2002-9-29 22:56:00 | 只看该作者
很遗憾的是,微软的这篇文章好像很过时了,例如创建永久交换文件我在帮助中怎么也没有找到。现在的access好像也不用MSACCESS.INI了!!
16#
发表于 2002-9-30 19:36:00 | 只看该作者
我正为这个问题担心。
  帮一家公司做了一个收费软件,每月用户12000左右,三台电脑对等网共享数据库。现在运行到第五个月,主表记录到了5万多条,数据库到了40余MB(经过了压缩和修复)。
    各位说的快慢不知是以什么为标准? 我觉得慢是因为收费时查询数据有数秒钟的延迟(慢的时候要7-8秒钟),在收费高峰期,每增加一两秒钟就隐含着危机。

17#
发表于 2002-10-6 23:06:00 | 只看该作者
对!版主说的有道理,其实慢经常是设计不合理造成的。
18#
发表于 2002-10-7 15:15:00 | 只看该作者
在网络上也有很大的影响, 如果大家的网络都是微软操作系统, 我建议大家都用一个TCP/IP协议较好。 这个协议虽然没有netbeui速度快, 但稳定性不是netbeui可比拟的。 最好的是TCP/IP可路由。除路由外,在多层HUB集联的网络使用也相当稳定。
19#
发表于 2002-10-7 16:08:00 | 只看该作者
我用的是IPX协议,好象也很稳定。
20#
发表于 2002-10-7 19:51:00 | 只看该作者
讨论太高深了,能不能建立一个关于access的关于主\客机怎样实现的讲座,越详细越好,我想这对很多初学者有很大吸引力,TKS!!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2025-1-10 05:50 , Processed in 0.093317 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表