Verificando se uma tabela existe - ADO / ADOX . 

Precisa saber se uma tabela existe no banco de dados ? Vamos mostrar como fazer isto com ADO e ADOX.

1-) Inicie um novo projeto no Visual Basic e no formulário padrão insira dois botões de comando e duas caixas de textos , labels e  um frame conforme no layout abaixo: 

- Faça referências em seu projeto - menu Project|References... - a Microsoft ADOX e Microsoft ADO.

2-)Agora insira o seguinte código  no botão de comando - ADOX - (cmdADOX) :

Private Sub CmdADOX_Click()

Dim oCat As ADOX.Catalog
Dim oTabela As ADOX.Table
Dim bAchouTabela As Boolean

Set oCat = New ADOX.Catalog
oCat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & txtbancodados.Text

bAchouTabela = False
   For Each oTabela In oCat.Tables
        If UCase(oTabela.Name) = UCase(txttabela.Text) Then
            bAchouTabela = True
            Exit For
        End If
   Next

If bAchouTabela Then
     MsgBox "A tabela <<" & txttabela.Text & ">> foi localizada em => " & txtbancodados.Text
Else
    MsgBox "A tabela <<" & txttabela.Text & ">> não foi localizada em => " & txtbancodados.Text
End If

End Sub

-  ADOX  usa o objeto Catalog para pesquisar as tabelas no banco de dados

3-) Inclua o código a seguir no botão de comando - Usando ADO - ( cmdADO )

Private Sub CmdADO_Click()

Dim oConn As ADODB.Connection
Dim oRs As ADODB.Recordset

Set oConn = New ADODB.Connection
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & txtbancodados.Text

Set oRs = oConn.OpenSchema(adSchemaTables, Array(Empty, Empty, txttabela.Text, "TABELA"))

If Not oRs.EOF Then
   MsgBox "A tabela <<" & txttabela.Text & ">> foi localizada em => " & txtbancodados.Text
Else
   MsgBox "A tabela <<" & txttabela.Text & ">> não foi localizada em => " & txtbancodados.Text
End If

oConn.Close
oRs.Close

End Sub

- ADO usa o OpenSchema para verificar a existência da tabela

Até a próxima...