分享

判断ACCESS中是否存在某个表

 hdzgx 2019-12-10
  1. Dim cn As New ADODB.Connection
  2. Dim rs As New ADODB.Recordset
  3. cn.Open "Provider=Microsoft.ace.OLEDB.12.0;Data Source=" & App.Path & "\storage.accdb" & ";Persist Security Info=False"
  4. Set rs = cn.OpenSchema(adSchemaTables)
  5. Do Until rs.EOF
  6. If rs!TABLE_NAME = Text3.Text Then
  7. MsgBox "存在此表名"
  8. Exit Do
  9. End If
  10. rs.MoveNext
  11. Loop

方法1:另外一种风格

  1. connectstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.path & "\my.mdb" & ";Persist Security Info=False;Jet OLEDB:Database Password=xiangyang"
  2. Set gsSys_db = New ADODB.Connection
  3. gsSys_db.Open connectstr
  4. Dim TableName As String
  5. Set rs = gsSys_db.OpenSchema(adSchemaTables)
  6. Do While Not rs.EOF
  7. TableName = rs.Fields("TABLE_NAME")
  8. If TableName = "你要查询的表名" Then
  9. MsgBox "表已存在"
  10. Exit Do
  11. end if
  12. rs.MoveNext
  13. Loop


方法2:

  1. '*********************************************************
  2. '* 名称:TableExists
  3. '* 功能:判断表是否存在(表名)
  4. '* 用法:TableExists(表名) adoCN是一个access的连接
  5. '*********************************************************
  6. Public Function TableExists(findTable As String) As Boolean
  7. Dim rstSchema As New ADODB.Recordset
  8. Set rstSchema = adoCN.OpenSchema(adSchemaTables)
  9. rstSchema.Find "TABLE_NAME='" & findTable & "'"
  10. If rstSchema.EOF Then
  11. TableExists = False
  12. Else
  13. TableExists = True
  14. End If
  15. rstSchema.Close
  16. End Function

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多