恢复从 Access 2000、 Access 2002 或 Access 2003 中数据库删除表的方法 |
留神 : 本文示例代码 使用 Microsoft 数据 拜访对象 。 为此代码 威力 畸形运行, 您必须 引用 Microsoft DAO 3.6 对象库 。 可以进行, 单击 工具 菜单中 VisualBasic 编辑器, 上 引用 并确保选中 Microsoft DAO 3.6 对象库 复选框 。 1. 在 MicrosoftAccess 中 打开数据库 。 2. 在数据库窗口, 单击下 对象 , 模块 , 而后单击 新建 。 3. 键入或粘贴以下代码, 您惟独 缔造模块中: 复制代码 代码如下: Function RecoverDeletedTable() On Error GoTo ExitHere *Declarations* Dim db As DAO.Database Dim strTableName As String Dim strSQL As String Dim intCount As Integer Dim blnRestored As Boolean *Init* Set db = CurrentDb() *Procedure* For intCount = 0 To db.TableDefs.Count - 1 strTableName = db.TableDefs(intCount).Name If Left(strTableName, 4) = "'tmp" Then strSQL = "SELECT DISTINCTROW [" & strTableName & "].* INTO " & Mid(strTableName, 5) & " FROM [" & strTableName & "];" DoCmd.SetWarnings False DoCmd.RunSQL strSQL MsgBox "A deleted table has been restored, using the name " & Mid(strTableName, 5) & "", vbOKOnly, "Restored" blnRestored = True End If Next intCount If blnRestored = False Then MsgBox "No recoverable tables found", vbOKOnly End If *EXIT/ERROR* ExitHere: DoCmd.SetWarnings True Set db = Nothing Exit Function ErrorHandler: MsgBox Err.Description Resume ExitHere End Function 4. 在 调试 菜单上, 单击 编译 数据库名称 数据库名称 。 5. 保留为 RecoverTable 模块 。 要测试此函数, 首先 缔造两个表, 增加行, 并删除这两个表 。 6. 在即时窗口, 键入以下行, 而后按 ENTER 键: RecoverDeletedTable |