若程序使用 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