当前位置: 首页 > 图文教程 > 网络编程 > ASP > 纯编码实现数据库的建立或压缩

ASP
bbs的数据结构和存储过程(二)
bbs的数据结构和存储过程(三)
聊天室自做 Follow Me
动态按钮生成器(上)
动态按钮生成器(下)
ASP直接调用EXCEL数据的例子(不用ODBC)
asp自动生成javascript检验函数
用Jmail做收取邮件附件的程序
简单的浮点论坛
ASP数据库恢复的代码
限制只能中文输入的方法
产生密码,记录到数据库,然后发送给用户。
一个基于web的QQ程序 1(xml+asp)
利用ASP生成EXECL文档
用ASP让用户访问指定页面
使用ASP程序对“HTML炸弹”进行屏蔽
实现ASP文件在线发邮件
用ASP+SQL Server为网页建一道防火墙
用Delphi开发ASP分页组件
如何在DataGrid控件中隐藏列

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 49 ::
收藏到网摘: n/a

  <% 
'#######以下是一个类文件,下面的注解是调用类的方法
'#  注意:如果系统不支持建立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