a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 171|回复: 1

[Access] 2012年计算机二级Access重点:数据库的建立或压缩(2)

[复制链接]
发表于 2012-7-31 22:26:35 | 显示全部楼层 |阅读模式
Set Ca = Nothing   CreateDBfile = True' S4 \' v, T7 ]( L
  End If- e0 [% \" @8 F* m  i+ J/ I/ V
  End function7 F5 y4 Y/ J( b. @$ i$ r! q/ ]
  Public function CompactDatabase(byVal dbFileName,byVal DbVer,byVal SavePath)1 O& w7 @0 \! k( B' x$ W' O
  ’压缩数据库文件, T( n7 S, j4 X+ A# \
  ’0 为access 97
$ i0 Q! u; p  g; w  ’1 为access 2000, n5 @4 {. ?& ^/ L% [  I3 x) l
  On Error resume next
& p& B! b. `1 t$ ~8 L( n+ h; f  If Right(SavePath,1)"\" Or Right(SavePath,1)"/" Then SavePath = Trim(SavePath) & "\"
4 K1 \6 T2 X; {  If Left(dbFileName,1)="\" Or Left(dbFileName,1)="/" Then dbFileName = Trim(Mid(dbFileName,2,Len(dbFileName)))  D3 D2 G7 l: ]" O1 V5 y7 T' A
  If DbExists(SavePath & dbFileName) Then7 {$ D8 Y) n4 u+ H9 b1 }  c
  Response.Write ("对不起,该数据库已经存在!")
' M8 s& v* O( o2 J; H8 N7 e5 }/ b  CompactDatabase = False
8 t( \# q" P3 f7 v$ V; |  Else9 w% D; N- Z4 ^) T
  Dim Cd
4 F/ K3 S- H/ N# L* P9 Q  Set Cd =Server.CreateObject("JRO.JetEngine")% i( I) j  L( d1 B( Z  t  H
  If Err.number0 Then
# L5 u: v; {9 I  S4 j+ M& F# y  Response.Write ("无法压缩,请检查错误信息6 }! o3 w& B, K' f
" & Err.number & "* D  [: I! O+ p" a' J$ `+ I( u
" & Err.Description)
" n4 o) u7 N; D7 [) p, {3 n  Err.Clear
3 c+ v: g- j0 g7 A  Exit function
% \9 ^2 h" F* O% q' S: q" Y# z9 G2 [4 t2 N7 [8 P* {* G
  End If
回复

使用道具 举报

 楼主| 发表于 2012-7-31 22:26:36 | 显示全部楼层

2012年计算机二级Access重点:数据库的建立或压缩(2)

</p>  If DbVer=0 Then
: K  `8 Z5 y6 w' k: f0 [& x# E: [  call Cd.CompactDatabase("Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" & SavePath & dbFileName,"Provider=Microsoft.Jet.OLEDB.3.51;Data0 f/ K# I( B6 e3 f+ ~
  Source=" & SavePath & dbFileName & ".bak.mdb;Jet OLEDB;Encrypt Database=True")
- ^  P- `# K) z5 ]/ k7 S  Else. w) W% [9 T' U/ a
  call Cd.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &( {: _" p7 g8 [; }
  SavePath & dbFileName,"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
  E* L- s8 ^$ p  SavePath & dbFileName & ".bak.mdb;Jet OLEDB;Encrypt Database=True")
; L- `9 ?- ^6 q) k2 b+ X3 d  End If
& A- l1 U1 i# m) a" V  ’删除旧的数据库文件- h7 [" q0 l9 g# o' V3 J
  call DeleteFile(SavePath & dbFileName)6 t6 S& d! S9 q% l7 B
  ’将压缩后的数据库文件还原
3 q1 f. v& Q, [+ W* b8 f  call RenameFile(SavePath & dbFileName & ".bak.mdb",SavePath & dbFileName)  B1 Q% U, h: T  Z! f
  Set Cd = False
6 d$ @. x  Z* x% n& \* r  CompactDatabase = True
( o, C+ a9 Z. L0 t8 z' m' L  End If9 }4 `# [/ }# U! t! R  t# `6 J
  end function
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-9-28 01:27 , Processed in 0.681357 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表