急问:如何判断access数据库中是否存在某个表?

fellingsky 2003-10-30 10:36:28
急问:如何判断access数据库中是否存在某个表?在线等待
...全文
60 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hhjjhjhj 2003-10-30
  • 打赏
  • 举报
回复
ADOX也可以
Dim cnn As New ADODB.Connection
Set cat = CreateObject("ADOX.Catalog")
cnn.Open "..............;"
Set cat.ActiveConnection = cnn
For Each tb In cat.Tables
Debug.Print tb.Name
Next
fellingsky 2003-10-30
  • 打赏
  • 举报
回复
谢谢!!!
lihonggen0 2003-10-30
  • 打赏
  • 举报
回复
DAO访问数据库

用这个,我以前用DAO的时候写的:

Public Function ExistsTable(TName As String) As Boolean
Dim dbAccess As Database
Dim Test As String

On Error Resume Next

Set dbAccess = OpenDatabase(App.Path & "\dbdevice.mdb", False, False)
' 该名字在表名中是否存在。
Test = dbAccess.TableDefs(TName).Name
If Err <> 3265 Then
ExistsTable = True
Err = 0
End If
dbAccess.Close
End Function
lihonggen0 2003-10-30
  • 打赏
  • 举报
回复
'*********************************************************
'* 名称:TableExists
'* 功能:判断表是否存在(表名)
'* 用法:TableExists(表名) adoCN是一个access的连接
'*********************************************************
Public Function TableExists(findTable As String) As Boolean
Dim rstSchema As New ADODB.Recordset
Set rstSchema = adoCN.OpenSchema(adSchemaTables)
rstSchema.Find "TABLE_NAME='" & findTable & "'"
If rstSchema.EOF Then
TableExists = False
Else
TableExists = True
End If
rstSchema.Close
End Function


lihonggen0 2003-10-30
  • 打赏
  • 举报
回复
'----------------------------------------------------------------------------
'
'Author:lihonggen0
'Date:2003-6-19
'功能:获取access库中表的个数及表的名称
'用ado怎样实现
'工程--->引用--->Microsoft ActiveX Data Object 2.x(版本号)
'----------------------------------------------------------------------------
Private Sub Form_Load()
Dim adoCN As New ADODB.Connection '定义数据库的连接
Dim strCnn As New ADODB.Recordset
Dim I As Integer
str1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\Northwind.MDB;Persist Security Info=False"
adoCN.Open str1

Set rstSchema = adoCN.OpenSchema(adSchemaTables)

Do Until rstSchema.EOF
If rstSchema!TABLE_TYPE = "TABLE" Then
out = out & "Table name: " & _
rstSchema!TABLE_NAME & vbCr & _
"Table type: " & rstSchema!TABLE_TYPE & vbCr
I = I + 1
End If
rstSchema.MoveNext
Loop
MsgBox I
rstSchema.Close

adoCN.Close
Debug.Print out
End Sub

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧