当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP编程技巧大全

ASP
论坛树状记录表的堆栈展开
Oracle大文本在ASP中存取问题的解决
ASP创建SQL Server数据库的两种方法
浅谈session_onend的调试
用ASP访问数据库的几种常见方式
教你一次下载网页中的所有资源
20种看asp源码的方法及工具
在ASP中使用智岛网格控件全过程
解决使用ASP无法连接ORACLE 9i数据库的问题
用Js判断输入的时间是否有效
ADO数据与XML数据间的转换的类
使用命名管道访问SQL Server
网页加速之网页结构篇
在红蜻蜓中实现多房间
在ASP中使用Oracle数据库技巧
关于分页办法
在VB中使用API函数(Any)
网站ASP漏洞小总结
网页之定时器详解
实用函数- 判断输入的是否是电话号码

ASP编程技巧大全


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

       <%
  ''#######以下是一个类文件,下面的注解是调用类的方法################################################
  ''# 注意:如果系统不支持建立Scripting.FileSystemObject对象,那么数据库压缩功能将无法使用
  ''# Access 数据库类
  ''# CreateDbFile 建立一个Access 数据库文件
  ''# CompactDatabase 压缩一个Access 数据库文件
  ''# 建立对象方法:
  ''# Set a = New DatabaseTools
  ''# by (萧寒雪) s.f.
  ''#########################################################################################
  
  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 ("无法建立,请检查错误信息
  " & Err.number & "
  " & 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 ("无法压缩,请检查错误信息
  " & Err.number & "
  " & 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
 &nb