• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

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

    发布者: 涵韵3588 | 发布时间: 2025-6-19 07:20| 查看数: 31| 评论数: 0|帖子模式

    注意 : 本文示例代码使用 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
    来源:https://www.jb51.net/article/10675.htm
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

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