若程序使用 Access 资料库开发,当 Access 资料库损毁时,一进入程序,便会出现以下讯息:

Can't open database 'name'. It may not be a database that your application recognizes, or the file may be corrupt. (Error 3049)

若是程序中未加入错误判断,程序便会中断跳出,这会给予使用者极不好的印象,要避免这种情形,甚至不让使用者发现资料库损毁,便要加入以下之程序码加以判断:

Private Sub Form_Load()
Dim db As Database
On Error GoTo error1
Set db = OpenDatabase("c:\test.mdb")
On Error GoTo 0
: '正常程序开始
:
Exit Sub

error1:
If Err = 3049 Then '资料库损毁
DBEngine.RepairDatabase "C:\test.mdb"
Resume
Else
MsgBox Err & Error(Err)
End If