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

ASP
ASP+ACCESS实现的无限级目录树
ASP中字符串函数的应用
在VBScript中使用类(一)
在VBScript中使用类(二)
VS .net 2003调试javascript中两个杂症的解决
在VBScript中使用类(三)
如何在 dataGrid 上的第一列加上 CheckBox
在VBScript中使用类(四)
ASP.NET 的状态管理
用Asp写个加密和解密的类
网页制作 JSP与ASP 的比较
ASP.NET设计网络硬盘之两重要类
ASP:网上通讯簿1.00
ASP:Hack & Anti-Hack
ASP基本语法
ASP实用函数库
ASP进阶教程:给留言簿润下色
ASP进阶教程:数据库版本的留言簿
ASP进阶教程:留言簿自动发E-Mail
ASP进阶教程:留言查询功能(一)

ASP编程技巧大全


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 35 ::
收藏到网摘: 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