> Faqs > ¿Cómo puedo recibir los campos de una tabla en un array?

¿Cómo puedo recibir los campos de una tabla en un array?

Estoy haciendo una aplicación para actualizar una BD de MySQL que hay en Internet con una BD en DBase que tenemos en la oficina, a ambas accedo via DSN, lo que quería saber es si existe alguna forma de recibir todos los nombres de los campos que tiene una tabla en un array, tambien quería saber si se puede hacer lo mismo que lo de los campos solo que con las tablas. Por cierto, la aplicacion la estoy haciendo con VisualBasic 6.

Respuestas

Efectivamente con tabledef, se puede determinar cuales son las tablas de la base de datos como se muestra en el código anexo.

Dim BucleTabla As TableDef
Set BaseDatos = DBEngine.Workspaces(0).OpenDatabase(StrArchivoEntrada)
Combo5.Clear
For Each BucleTabla In BaseDatos.TableDefs
Combo5.AddItem BucleTabla.Name
Next

Para los campos tendríamos algo como lo siguiente:

Dim tabla As Recordset
Dim BucleCampo As Field
Set tabla = BaseDatos.OpenRecordset("select * from [" & Combo5.Text & "]")
Combo1.Clear
For Each BucleCampo In tabla.Fields
Combo1.AddItem BucleCampo.Name
Next

Todo lo anterior haciendo uso del DAO, que quizá pueda resultar algo obsoleto.

Alexander Rodriguez G