Asunto: Obtener lista nombre tablas de access en Visual Basic
Estoy desarrollando una aplicación de facturación con Visual Basic, como motor de base de datos utilizo Microsoft Access. Necesito obtener una lista con el nombre de las tablas de la base de datos Access ¿cómo puedo hacer esto con Visual Basic?
Publicado:
Vie Oct 16, 2009 6:52 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Obtener lista nombre tablas de access en Visual Basic
Anuncios
varios escribió:
Estoy desarrollando una aplicación de facturación con Visual Basic, como motor de base de datos utilizo Microsoft Access. Necesito obtener una lista con el nombre de las tablas de la base de datos Access ¿cómo puedo hacer esto con Visual Basic?
Puedes utilizar el siguiente código:
Código:
Option Explicit
Private Function obtenerTablasAccess(cadenaConexion As String) As String
On Error GoTo cError
Dim conexionBD As New ADODB.Connection
Dim refCatalogo As New ADOX.Catalog
Dim refTablas As ADOX.Tables
Dim tablaActual As ADOX.Table
Dim lista As String
'Abre la conexión con la base de datos access
conexionBD.ConnectionString = cadenaConexion
conexionBD.Open cadenaConexion
'Asigna la conexión actual al objeto Catalog
Set refCatalogo.ActiveConnection = conexionBD
'Obtiene y asigna la colección con la lista de las tablas
Set refTablas = refCatalogo.Tables
lista = ""
'Recorre las tablas y las asigna a la lista
For Each tablaActual In refTablas
If lista = "" Then
lista = tablaActual.Name
Else
lista = lista + vbCrLf + tablaActual.Name
End If
Next
obtenerTablasAccess = lista
cSalir:
Exit Function
cError:
MsgBox Err.Description & Err.Number
'Cerramos la conexión
On Error Resume Next
If conexionBD.State <> 0 Then
conexionBD.Close
End If
'Libera las referencias
Set conexionBD = Nothing
Set refCatalogo = Nothing
Set tablaActual = Nothing
Set refTablas = Nothing
GoTo cSalir:
End Function
Private Sub btObtener_Click()
txtTablas.Text = obtenerTablasAccess("PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=" & txtBD.Text)
End Sub
Recuerda que en las Referencias del proyecto debes añadir:
* Microsoft ADO Ext. 2.8 for DLL and Security.
* Microsoft ActiveX Data Objects 2.8 Library.
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A