Tìm thủ thuật nhanh hơn với chức năng tìm trong Blog

7/15/12

Khôi phục table vô tình xóa

Khôi phục lại table đã vô tình xóa 
Share by: Xuân Thanh 
Đã có khi nào bạn vô tình xóa một table? Và bạn không có dự phòng? Có một cách bạn có thể khôi phục lại nó nếu bạn chưa xóa thêm một table khác hoặc bạn chưa đóng cơ sở dữ liệu của bạn. Bằng thủ thuật sau đây, bạn có thể chèn tất cả các trường của bảng đã xóa vào một bảng mới



Function Undo()

  Dim db As DAO.Database, strTablename As String
  Dim i As Integer, StrSqlString As String

  Set db = CurrentDb()

  For i = 0 To db.TableDefs.Count - 1

    If Left(db.TableDefs(i).Name, 4) = "~tmp" Then
       strTablename = db.TableDefs(i).Name
       StrSqlString = "SELECT DISTINCTROW [" & strTablename & _
         "].* INTO MyUndeletedTable FROM [" & strTablename & "];"
       DoCmd.SetWarnings False
       DoCmd.RunSQL StrSqlString
       DoCmd.SetWarnings True
       MsgBox "A table has been restored as MyUndeletedTable", _
         vbOKOnly, "Restored"
       GoTo Exit_Undo
    End If
  Next i
  MsgBox "No Recoverable Tables Found", vbOKOnly, "Not Found"

Exit_Undo:
     Set db = Nothing
     Exit Function
Err_Undo:
     MsgBox Err.Description
     Resume Exit_Undo

End Function

Lưu ý : Phải bổ sung thư viện DAO trong cửa sổ VBA bạn nhé, nếu không sẽ bị lổi đấy
Thân mến