给你的数据库文件减肥

在数据库的设计过程中经常要添加、删除数据库对象,这会使数据库内部留有许多碎片,不能有效地利用磁盘空间,文件会逐渐增大。这有点象文件系统经过多次的增删操作,会导致文件碎片,浪费磁盘空间,而且读写效率降低。
你可以用 Access 提供的工具来压缩数据库,它将重新安排数据库文件在磁盘中保存的位置,并释放磁盘空间,通常文件的容量会缩小成原来的几分之一。

Access 内置了压缩数据库的功能
但 Access 文件的增大十分夸张,它可能会让文件增大十倍,让它臃肿地呆在你的硬盘里。这好象是微软的通病。你可以打开一个Word文件,添加几个空格再把它们删了(实际文件的内容没有改变),然后保存,你会发现它比刚才大了些,比如一个45k的文件经过几次这样的更改后文件大小变成49.5k→58.5k→68.5k,实在不知道往文件里面又存了些什么。所以我们有理由怀疑 Access 数据库压缩的效果。
一年以前我编了一个统计系统,用了大概3个月,几乎每天都在修改,几天就压缩一次,最后这个 Mdb 文件有20M大,即使是 Mde 文件也有8M多,我乐坏了,以为自己也能设计大型程序了。今年这个程序要升级,可是源程序让我弄丢了(心疼呀),于是下定决心,重新编了一个。功能几乎没有变,最后的 Mdb 文件大小只有2M多,我的天!简直不敢相信!原来 Access 文件改动得越多压缩得越多文件就越大,什么逻辑!
还有,如果你的 Mdb 文件太大了,可以建立一个新的空数据库,把原来的数据库全部内容都导入到这个新数据库里,再看看,文件一定小了许多。我做了一个实验,一个640k的 Mdb 文件,压缩数据库后变成240k,再建一个新数据库,把它全部导入,就只有60k了。
当然,不论用上面什么方法,Mdb 文件还是非常松散的,用 Winzip 还能把它压缩好几倍,所以,如果你要把程序妹给朋友,记得最后还要用 Winzip 压缩,才不会浪费你的电话费!(出处:双胞胎工作室)

(0)

相关推荐

  • 给你的数据库文件减肥

    在数据库的设计过程中经常要添加.删除数据库对象,这会使数据库内部留有许多碎片,不能有效地利用磁盘空间,文件会逐渐增大.这有点象文件系统经过多次的增删操作,会导致文件碎片,浪费磁盘空间,而且读写效率降低. 你可以用 Access 提供的工具来压缩数据库,它将重新安排数据库文件在磁盘中保存的位置,并释放磁盘空间,通常文件的容量会缩小成原来的几分之一. Access 内置了压缩数据库的功能 但 Access 文件的增大十分夸张,它可能会让文件增大十倍,让它臃肿地呆在你的硬盘里.这好象是微软的通病.你可

  • ACCESS数据库文件的压缩和修复方法[图文]

    先谈谈DllHotst进程消耗cpu 100%的问题: 服务器正常CPU消耗应该在75%以下,而且CPU消耗应该是上下起伏的,出现这种问题的服务器,CPU会突然一直处100%的水平,而且不会下降.查看任务管理器,可以发现是DLLHOST.EXE消耗了所有的CPU空闲时间,管理员在这种情况下,只好重新启动IIS服务,奇怪的是,重新启动IIS服务后一切正常,但可能过了一段时间后,问题又再次出现了. 直接原因: 有一个或多个ACCESS数据库在多次读写过程中损坏, MDAC系统在写入这个损坏的ACCE

  • SqlServer修改数据库文件及日志文件存放位置

    --查看当前的存放位置 select database_id,name,physical_name AS CurrentLocation,state_desc,size from sys.master_files where database_id=db_id(N'数据库名'); --修改文件的存放位置下次启动生效 --testDb为数据库名, alter database 数据库名 modify file ( name = 文件名(不包含后缀), filename = '文件存储路径'); a

  • 详解ios中的SQL数据库文件加密 (使用sqlcipher)

    今天本想写一片 GAE+goAgent+SwitchySharp 的指南的!但是突然翻出了前段时间写的关于iOS中的SQL数据库文件加密的代码,于是乎决定今天就先讲讲这个!- 那么goAgent将放在周末,后续的文章中除了文件加密,还有传输数据加密,感兴趣的童鞋 敬请留意. 言归正传,sql的文件加密,我们首先要用到一个库,它就是大名鼎鼎的Sqlcipher,  奉上连接:http://sqlcipher.NET,在ios里 我们需要看的文档是这一篇http://sqlcipher.Net/io

  • 在ORACLE移动数据库文件

    正在看的ORACLE教程是:在ORACLE移动数据库文件. ---- ORACLE数据库由数据文件,控制文件和联机日志文件三种文件组成.由于磁盘空间的变化,或者基于数据库磁盘I/O性能的调整等,数据库管理员可能会考虑移动数据库文件.下面以UNIX平台为例,分别讨论三种数据库文件的移动方法. ---- 一.移动数据文件: ---- 可以用ALTER DATABASE,ALTER TABLESPACE两种方法移动数据文件. ---- 1. ALTER DATABASE方法: ---- 用此方法,可以

  • 分享php代码将360浏览器导出的favdb的sqlite数据库文件转换为html

    下面给大家分享了一段php代码,讲解将360浏览器导出的favdb的sqlite数据库文件转换为html,下面代码简单易懂,感兴趣的朋友看一下吧. php代码如下所示: <?php $book_mark_name = 'book_mark.html'; $content = file_get_contents('tb_fav.json'); var_dump($content); $content_list = json_decode($content,'utf-8'); $content_li

  • Python读取sqlite数据库文件的方法分析

    本文实例讲述了Python读取sqlite数据库文件的方法.分享给大家供大家参考,具体如下: import sqlite3 这是Python内置的,不需要pip install 包 数据库里面有很多张表 要操作数据库首先要连接conect数据库 mydb=sqlite3.connect("alfw.sqlite") 然后创建游标cursor来执行executeSQL语句 cursor=mydb.cursor() 比如我想看这个数据库的几张表的名字是什么 cursor.execute(&

  • ASP中文本文件与数据库文件的数据交换(FSO)

    ASP中文本文件与数据库文件的数据交换 网络数据库的应用是WWW上一个很重要的组成部分,可以这样说,如果缺少了数据库,网络也就失去了灵魂.大家可以想象一下,如果没有象YAHOO,SOHU等搜索引擎的话,那么在网上寻找一个目标变得多么困难,大家在茫茫网海里变得不知所往,动辄迷失方向.其实,这些搜索引擎是网络数据库的最典型的应用,在ASP(Active Server Pages)技术里对数据库的直接操作是比较多的,下面讲述一种由文本文件向数据库文件传递数据的方法. 这个文本文体是由终端采集传送到服务

  • ASP开发中数据库文件调用的捷径

    引言  本文针对ASP程序设计中最基础.也是最关键的部分"数据库文件的调用"进行说明,同时谈谈ASP程序设计中数据库文件调用的一些技巧. ASP简介 ASP(Active Server Pages)是微软于1996年推出的Web应用程序开发技术,它是一种脚本语言.ActiveX组件及HTML语言等的综合,微软把它描述为"一个服务器的脚本环境,在这里可以生成和运行动态的.交互的.高性能的Web服务器应用程序".其主要功能是为生成动态的.交互式的Web服务器应用程序提供

  • access数据库的一些少用操作,ASP,创建数据库文件,创建表,创建字段,ADOX

    复制代码 代码如下: <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <% if Trim(Request.Form("TableName")) '----设置 打开数据库连接 dbs="Data Source="+server.mappath("database.mdb")+";Provider=Microsoft.Jet.OLEDB.4.0;&

随机推荐