实例讲解Access数据库在线压缩的实现方法

jianghe0710

jianghe0710

2016-02-19 18:20

今天天气好晴朗处处好风光,好天气好开始,图老师又来和大家分享啦。下面给大家推荐实例讲解Access数据库在线压缩的实现方法,希望大家看完后也有个好心情,快快行动吧!

  如果在 Access 数据库中删除数据或对象,或者在 Access 项目中删除对象,Access 数据库或 Access 项目可能会产生碎片并会降低磁盘空间的使用效率。压缩 Access 数据库或Access项目实际上是复制该文件,并重新组织文件在磁盘上的存储方式。压缩同时优化了 Access 数据库和 Access 项目的性能。

  所以我们在对日益增大的数据库导致的ASP程序慢得无法忍受的时候,就想到了要压缩他。但常规的做法把他下载到本地然后用MSaccess来完成压缩操作,然后再上传!

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  需要注意的是:本程序其实是通过FSO权限和JET引擎连接,因此在使用之前请确认你的服务器支持FSO(filesystemobject)权限并安装的ACCESS最新驱动!从安全出发,请在压缩之前备份原始数据库!已经测试通过的运行环境:

  WIN98SE+PWS、WIN2000+IIS5.0

  下面是我整理后的源代码,复制另存为compact.asp并上传到数据库所在目录即可正常使用。

html
head
titleACCESS数据库压缩程序/title
/head
body bgcolor="e0f8ef"
div
div align="center"font color="#3300FF"
bfont size="5"通用ACCESS数据库在线压缩程序/font/b/fontbr
/div
divbr
本程序其实是通过FSO权限和JET引擎连接,
因此在使用之前请确认你的服务器支持FSO
(filesystemobject)权限并安装的ACCESS最新驱动!
从安全出发,请在压缩之前备份原始数据库!/divbr
div align="center"运行环境:在WIN98SE+PWS、WIN2000+IIS5.0 br
%
Const JET_3X = 4
Function CompactDB(dbPath, boolIs97)
Dim fso, Engine, strDBPath
strDBPath = left(dbPath,instrrev(DBPath,""))
Set fso = CreateObject("Scripting.FileSystemObject")

If fso.FileExists(dbPath) Then
Set Engine = CreateObject("JRO.JetEngine")

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

If boolIs97 = "True" Then
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath, _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & "temp.mdb;" _
& "Jet OLEDB:Engine Type=" & JET_3X
Else
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath, _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & "temp.mdb"
End If
fso.CopyFile strDBPath & "temp.mdb",dbpath
fso.DeleteFile(strDBPath & "temp.mdb")
Set fso = nothing
Set Engine = nothing
CompactDB = "你的数据库, " & dbpath & ", 已经被压缩" & vbCrLf
Else
CompactDB = "你输入的数据库路径或名称未找到,请重试" & vbCrLf
End If

End Function
%
/div
/div
form name="compact" method="post" action="compact.asp"
div align="center"
font size="2"bfont color="#FF0000"
压缩选项,请仔细填写!/font/bbr
br
输入数据库全称:
input type="text" name="dbpath"
(包括扩展名,如MDB、ASA、ASP等)br
br
input type="checkbox" name="boolIs97" value="True"
检查是否为ACCESS97数据库br
(默认为ACCESS2000的数据库)br
br
input type="submit" name="submit" value="确认压缩"
/font/div
/form
div align="center"font size="2"
%
Dim dbpath,boolIs97
dbpath = request("dbpath")
boolIs97 = request("boolIs97")

If dbpath "" Then
dbpath = server.mappath(dbpath)
response.write(CompactDB(dbpath,boolIs97))
End If
%
br
/font/div/body/html

展开更多 50%)
分享

猜你喜欢

实例讲解Access数据库在线压缩的实现方法

编程语言 网络编程
实例讲解Access数据库在线压缩的实现方法

用程序实现压缩access(*.mdb)数据库的方法

编程语言 网络编程
用程序实现压缩access(*.mdb)数据库的方法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

纯编码实现Access数据库的建立或压缩

ASP
纯编码实现Access数据库的建立或压缩

在VB中压缩ACCESS数据库

vb
在VB中压缩ACCESS数据库

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

实现Access数据库的Web查询

编程语言 网络编程
实现Access数据库的Web查询

读取Access数据库表名实例

编程语言 网络编程
读取Access数据库表名实例

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

在Access中模拟sql server存储过程翻页

在Access中模拟sql server存储过程翻页

win7访问指定网页的妙招

win7访问指定网页的妙招
下拉加载更多内容 ↓