欢迎来到福编程网,本站提供各种互联网专业知识!
您的位置:网站首页 > 数据库 > Access

恢复从 Access 2000、 Access 2002 或 Access 2003 中数据库删除表的方法

发布时间:2007-08-01 作者: 来源:转载
注意:本文示例代码使用Microsoft数据访问对象。为此代码才能正常运行,您必须引用MicrosoftDAO3.6对象库。可以进行,单击工具菜单中VisualBasic编辑器,上引用并确保选中MicrosoftDAO3.6对象库复选框。1.在MicrosoftAccess中打开数据库。2.在数据库窗口,单击下
注意:本文示例代码使用Microsoft数据访问对象。为此代码才能正常运行,您必须引用MicrosoftDAO3.6对象库。可以进行,单击工具菜单中VisualBasic编辑器,上引用并确保选中MicrosoftDAO3.6对象库复选框。

1.在MicrosoftAccess中打开数据库。
2.在数据库窗口,单击下对象,模块,然后单击新建。
3.键入或粘贴以下代码,您只有创建模块中:

复制代码 代码如下:
FunctionRecoverDeletedTable()
OnErrorGoToExitHere

'*Declarations*
DimdbAsDAO.Database
DimstrTableNameAsString
DimstrSQLAsString
DimintCountAsInteger
DimblnRestoredAsBoolean

'*Init*
Setdb=CurrentDb()

'*Procedure*
ForintCount=0Todb.TableDefs.Count-1
strTableName=db.TableDefs(intCount).Name
IfLeft(strTableName,4)="~tmp"Then
strSQL="SELECTDISTINCTROW["&strTableName&"].*INTO"&Mid(strTableName,5)&"FROM["&strTableName&"];"
DoCmd.SetWarningsFalse
DoCmd.RunSQLstrSQL
MsgBox"Adeletedtablehasbeenrestored,usingthename'"&Mid(strTableName,5)&"'",vbOKOnly,"Restored"
blnRestored=True
EndIf
NextintCount

IfblnRestored=FalseThen
MsgBox"Norecoverabletablesfound",vbOKOnly
EndIf

'*EXIT/ERROR*
ExitHere:
DoCmd.SetWarningsTrue
Setdb=Nothing
ExitFunction

ErrorHandler:
MsgBoxErr.Description
ResumeExitHere

EndFunction

4.在调试菜单上,单击编译数据库名称数据库名称。
5.保存为RecoverTable模块。要测试此函数,首先创建两个表,添加行,并删除这两个表。
6.在即时窗口,键入以下行,然后按ENTER键:

RecoverDeletedTable

相关推荐