网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP实例
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.在Web界面下如何生成像资源管理器.
.一个防止外部数据提交的脚本.
.使用ASP方便的建立自己网站的每日.
.asp实现同网站不同目录帮定不同域.
.购物车范例(购物车页面 ).
.ASP + Serv-u 实现FTP的代码.
.完整的访问统计程序(三 应用篇).
.第一个ASP组件:设置服务器日期时.
.StripNonNumeric函数源程序.
.Jmail发信的实例,模块化随时调用.
.聊天室建设详解二.
.使用 ASP+ 列表绑定控件(中).
.可以执行系统命令的ASP原码放送.
.用Asp备份与恢复SQL Server 数据.
.一个为字符串中的网址加上链接的.
.一些源程序 - 获得文件大小和字符.
.实例演练ASP+XML编程(4).
.聊天室建设详解三.
.利用ASP实现三个强大功能之一.
.列出服务器上的打印机 .

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

发表日期:2002-12-26


<% 
'#######以下是一个类文件,下面的注解是调用类的方法
'#  注意:如果系统不支持建立Scripting.FileSystemObject对象,
那么数据库压缩功能将无法使用 
'#                          Access 数据库类 
'# CreateDbFile 建立一个Access 数据库文件 
'# CompactDatabase 压缩一个Access 数据库文件 
'# 建立对象方法: 
'#     Set a = New DatabaseTools 


Class DatabaseTools 

Public function CreateDBfile(byVal dbFileName,byVal DbVer,byVal SavePath) 
'建立数据库文件 
'If DbVer is 0 Then Create Access97 dbFile 
'If DbVer is 1 Then Create Access2000 dbFile 
On error resume Next 
If Right(SavePath,1)<>"\" Or Right(SavePath,1)<>"/" Then SavePath = Trim(SavePath) & "\" 
If Left(dbFileName,1)="\" Or Left(dbFileName,1)="/" Then dbFileName = Trim(Mid(dbFileName,2,Len(dbFileName))) 
If DbExists(SavePath & dbFileName) Then 
Response.Write ("对不起,该数据库已经存在!") 
CreateDBfile = False 
Else 
Dim Ca 
Set Ca = Server.CreateObject("ADOX.Catalog") 
If Err.number<>0 Then 
Response.Write ("无法建立,请检查错误信息<br>" & Err.number & "<br>" & Err.Description) 
Err.Clear 
Exit function 
End If 
If DbVer=0 Then 
call Ca.Create("Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" & SavePath & dbFileName) 
Else 
call Ca.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & SavePath & dbFileName) 
End If 
Set Ca = Nothing 
CreateDBfile = True 
End If 
End function 

Public function CompactDatabase(byVal dbFileName,byVal DbVer,byVal SavePath) 
'压缩数据库文件 
'0 为access 97 
'1 为access 2000 
On Error resume next 
If Right(SavePath,1)<>"\" Or Right(SavePath,1)<>"/" Then SavePath = Trim(SavePath) & "\" 
If Left(dbFileName,1)="\" Or Left(dbFileName,1)="/" Then dbFileName = Trim(Mid(dbFileName,2,Len(dbFileName))) 
If DbExists(SavePath & dbFileName) Then 
Response.Write ("对不起,该数据库已经存在!") 
CompactDatabase = False 
Else 
Dim Cd 
Set Cd =Server.CreateObject("JRO.JetEngine") 
If Err.number<>0 Then 
Response.Write ("无法压缩,请检查错误信息<br>" & Err.number & "<br>" & Err.Description) 
Err.Clear 
Exit function 
End If 
If DbVer=0 Then 
call Cd.CompactDatabase("Provider=Microsoft.Jet.OLEDB.3.51;Data 
Source=" & SavePath & 
dbFileName,"Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" & 
SavePath & dbFileName & ".bak.mdb;Jet OLEDB;Encrypt Database=True") 
Else 
call Cd.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data 
Source=" & SavePath & 
dbFileName,"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & SavePath 
& dbFileName & ".bak.mdb;Jet OLEDB;Encrypt Database=True") 
End If 
'删除旧的数据库文件 
call DeleteFile(SavePath & dbFileName) 
'将压缩后的数据库文件还原 
call RenameFile(SavePath & dbFileName & ".bak.mdb",SavePath & dbFileName) 
Set Cd = False 
CompactDatabase = True 
End If 
end function 

Public function DbExists(byVal dbPath) 
'查找数据库文件是否存在 
On Error resume Next 
Dim c 
Set c = Server.CreateObject("ADODB.Connection") 
c.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbPath 
If Err.number<>0 Then 
Err.Clear 
DbExists = false 
else 
DbExists = True 
End If 
set c = nothing 
End function 

Public function AppPath() 
'取当前真实路径 
AppPath = Server.MapPath("./") 
End function 

Public function AppName() 
'取当前程序名称 
AppName = Mid(Request.ServerVariables("SCRIPT_NAME"),(InStrRev(Request.ServerVariables("SCRIPT_NAME") ,"/",-1,1))+1,Len(Request.ServerVariables("SCRIPT_NAME"))) 
End Function 

Public function DeleteFile(filespec) 
'删除一个文件 
Dim fso 
Set fso = CreateObject("Scripting.FileSystemObject") 
If Err.number<>0 Then 
Response.Write("删除文件发生错误!请查看错误信息<br>" & Err.number & "<br>" & Err.Description) 
Err.Clear 
DeleteFile = False 
End If 
call fso.DeleteFile(filespec) 
Set fso = Nothing 
DeleteFile = True 
End function 

Public function RenameFile(filespec1,filespec2) 
'修改一个文件 
Dim fso 
Set fso = CreateObject("Scripting.FileSystemObject") 
If Err.number<>0 Then 
Response.Write("修改文件名时发生错误!请查看错误信息<br>" & Err.number & "<br>" & Err.Description) 
Err.Clear 
RenameFile = False 
End If 
call fso.CopyFile(filespec1,filespec2,True) 
call fso.DeleteFile(filespec1) 
Set fso = Nothing 
RenameFile = True 
End function 

End Class 
%>
上一篇:用XML结合数据库,给服务器减负。 人气:12224
下一篇:从数据库中动态选取下拉列表的方法 人气:21740
浏览全部压缩的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐