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

 注意 : 本文示例代码使用 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

时间: 2024-10-09 18:21:33

恢复从 Access 2000、 Access 2002 或 Access 2003 中数据库删除表的方法_Access的相关文章

恢复从Access数据库删除表的方法

  注意 : 本文示例代码使用 Microsoft 数据访问对象. 为此代码才能正常运行, 您必须引用 Microsoft DAO 3.6 对象库. 可以进行, 单击 工具 菜单中 VisualBasic 编辑器, 上 引用 并确保选中 Microsoft DAO 3.6 对象库 复选框. 1. 在 MicrosoftAccess 中打开数据库. 2. 在数据库窗口, 单击下 对象 , 模块 , 然后单击 新建 . 3. 键入或粘贴以下代码, 您只有创建模块中: 复制代码 代码如下: Funct

access 数据库自启动困难解决方法_Access

问题分析好久, 经过排查,问题在于数据库的启动路径有问题,在连接数据库 时候可以这样写 GetModuleFileName(NULL,path,255);//获得自启动的程序完整路径; CString str; str.Format("%s",path); int place; place = str.ReverseFind( '\\' ); //获得最后一个'\'的位置; CString db_name; db_name = str.Left(place+1) + "qij

用DAO或ADO正确访问Access 2000

当你使用 DAO 访问 Access 2000 时,是否会出现以下的错误信息? "Run-time error 3343 Unrecognized Database Format XXX" 这个错误信息有二个解决的方式: 1.如果你是使用 Data Control 来连结 Access 2000 的资料库时: 你必须在设定 Data Control 的 Source 前先加上一行 Set Data1.Recordset = rsDAO36 'rsDAO36 is a DAO 3.6 2

防止Access 2000密码被破译的方法

如果你过分信任 Access 2000数据库的密码保护,你可能会因此而蒙受损失.这是因为Access 2000的数据库级密码并不安全,相反它很脆弱,甚至下面这段非常小的程序就可以攻破它:  程序一(VB6):Access 2000密码破译 Private Sub Command1_Click() Const Offset = &H43 文件偏移地址:Access数据库从此处开始存放加密密码 Dim bEmpty(1 To 2) As Byte, bPass(1 To 2) As Byte Di

升级至 Access 2000 时出现不可识别的数据库格式错误消息

access|错误|数据|数据库 这篇文章中的信息适用于: Microsoft Visual Basic Professional Edition for Windows 5.0, 6.0 Microsoft Visual Basic Enterprise Edition for Windows 5.0, 6.0 Microsoft Access 2000 Microsoft Data Access Components 2.5, 2.6本文的发布号曾为 CHS238401 症状当您试图从 Vi

保护Access 2000数据库的安全

access|安全|数据|数据库     在Office家族成员中,人们对于Access 2000的了解,往往只局限在它的操作界面中,对于数据库管理的功能仍只是停留在建立表.数据输入.使用窗体向导.报表向导.数据访问页向导等一些简单的应用上.其实Access 2000的功能十分强大,且超乎你的想像.它是微软自公布Access以来功能最全面.与Windows和Internet结合最紧密的数据库软件,是一个功能非常强大,而且简单易用的数据库管理系统(DBMS),即对数据库进行存储.处理和管理的系统.

用Access 2000进行班级管理

access  教师的责任与义务从未因为时代的变迁而削弱过,教育本身的特殊性使教师成为知识的传播者和人类灵魂的塑造者.而作为中小学的班主任教师,需要担负的责任却远比这要实际得多,也繁琐得多.庞杂的学生基本信息需要管理和上报,班级日常事务要纳入班级管理日志中,学生的思想问题需要面对面个别解决,凡此种种,往往令班主任顾此失彼.如何能够有效地组织班级管理,并使所有信息井然有序是班主任十分关心的问题. 根据我们的了解,班主任在日常工作中面临的主要困难有以下几点: 1. 学生基本信息量比较大,手工记录费时

Access 2000 数据库 80 万记录通用快速分页类

access|分页|数据|数据库 作者:萧月痕(xiaoyuehen)地址:http://blog.csdn.net/xiaoyuehen/archive/2005/01/17/257202.aspx 转贴请包含相关信息, 谢谢. 主要思路: 用一条语句统计(Count)出记录数(而不在查询时获得 RecordCount 属性), 缓存在 Cookies 中, 跳转时就不用再次统计, 分页跳转链接也由此来, 使用 ADO 的 AbsolutePage 属性设置当前页面, 返回intPageSiz

完全保护Access 2000数据库的安全

在Office家族成员中,人们对于Access 2000的了解,往往只局限在它的操作界面中,对于数据库管理的功能仍只是停留在建立表.数据输入.使用窗体向导.报表向导.数据访问页向导等一些简单的应用上.其实Access 2000的功能十分强大,且超乎你的想像.它是微软自公布Access以来功能最全面.与Windows和Internet结合最紧密的数据库软件,是一个功能非常强大,而且简单易用的数据库管理系统(DBMS),即对数据库进行存储.处理和管理的系统. 管理工作组信息文件 对于数据库而言,由于