Conexión de Access(vba) CON Mysql 000WEBHOST

Agradezco a quien me pueda colaborar por favor con lo siguiente

Tengo una aplicación en Access con VBA y tengo una base de datos Mysql en 000webhost la tengo en Mysql por que quiero que se pueda almacenar más datos
Y además que m i aplcacion interactue con un base de datos web como lo es Mysql en 000webhost,,, ali ntentar conectar la aplicación Access con el lenguaje

De progrtamacion VBA, mediante el siguiente código:

Dim ooConn As New ADODB.Connection
'Dim ooConn As ADODB.Connection
Dim rs As New ADODB.Recordset
On Error GoTo err
Set oConn = New ADODB.Connection
oConn.Open "DRIVER={MySQL ODBC 5.1 Driver};" & _
"SERVER=server38.000webhost.com;" & _
"DATABASE=a2628451_galindo;" & _
"USER=a2628451;" & _
"PASSWORD=hlcsppp*A1;" & _
"Option=3"
Exit Sub
err:
MsgBox "Se ha producido el siguiente error: " & err.Description, vbInformation, ActiveWorkbook.Name

El error que me dice el compilador o interprete al ejecutar el código es:

"No se ha definido el tipodefinidopor el usuario".

De verdad no se en donde este el problema pues tengo habilitada la referencia "Microsoft DAO 3.6 Object Library".

1 Respuesta

Respuesta
1

No tengo experiencia con ADO ni con conexiones Access-mySQL, pero hay una cosa que veo rara en tu código y probablemente sea la causa de ese error que te da de que no se ha definido el tipo:

 MsgBox "Se ha producido el siguiente error: " & err.Description, vbInformation, ActiveWorkbook.Name

La parte que te marco en negrita se corresponde con lenguaje VBA específico de Excel, que no existe en VBA Access.

Si lo cambias por algo como esto:

MsgBox "Se ha producido el siguiente error: " & err.Description, vbInformation, "Error de conexión"

Es probable que te funcione (si la conexión está bien hecha, claro)

Muchas gracias no había caído en cuenta en eso, pero el problema empieza en la primera línea de código, pues al compilar el programa me sigue saliendo el error que dice:

No se ha definido el, tipo definido por el usuario, el código es :

--------------------------------------------------------------------------------------------------------------

Dim ooConn As New ADODB.Connection   <--- Esta es la linea que me señala
Dim rs As New ADODB.Recordset
On Error GoTo err
Set oConn = New ADODB.Connection
oConn.Open "DRIVER={MySQL ODBC 5.1 Driver};" & _
"SERVER=server38.000webhost.com;" & _
"DATABASE=a2628451_galindo;" & _
"USER=a2628451;" & _
"PASSWORD=hlcsppp*A1;" & _
"Option=3"
Exit Sub
err:
MsgBox "Se ha producido el siguiente error: " & err.Description, vbInformation

--------------------------------------------------------------------------------------------------------------

Muchas gracias..

Por lo que comentas parece que te falta por registrar la librería para trabajar con ADO, que es una de éstas:

Microsoft ADO Ext x.x for DLL and Security

Microsoft ActiveX Data Objects x.x Library

Donde x.x dependerá de las que tengas instaladas.

Para registrarlas, abre el editor de VBA, vete a Herramientas-> Referencias-> la buscas y la marcas.

Hola, que pena  la tardanza en responderle pero ya registre las librerías y al correr el problema me aparece el siguiente error:

se ha producido el siguiente error:[Microsoft] [Administrador de controladores ODBC]No se encuentra el nombre de origen de datos y no se
especifico ningún controlador predeterminado

, vale mencionar que el 000webhost , me muestra la siguiente información:

Username

a2628451

Password Change

Disk Usage 0

Bandwidth100000 MB (100GB)

Home Root /home/a2628451

Server Name server38.000webhost.com

IP Address 31.170.160.102

y el código que tengo es:

Dim ooConn As ADODB.Connection

Dim rs As ADODB.Recordset
On Error GoTo err
Set oConn = New ADODB.Connection
oConn.Open "DRIVER=" & _
"SERVER=server38.000webhost.com;" & _
"DATABASE=a2628451_galindo;" & _
"USER=a2628451;" & _
"PASSWORD=hlcsppp*A1;" & _
"Option=3"
Exit Sub
err:
MsgBox "Se ha producido el siguiente error: " & err.Description, vbInformation 'en Access

de verdad nose en donde se encuentre el error.

Muchas gracias

Att. Ing Hernan Camilo Martínez

¿Tienes instalado el controlador ODBC de mySQL?

Si lo tengo instalado, pero mi pregunta es:

Si tengo mi base de datos em 000webhost, es necesario enunciar el controlador  MySQL ODBC 5.1 Driver?, siendo que como es sabido dicho controlador es para conectar la aplicación con la base de datos de PhpMyadmin, cuando esta esta conectada localmente mediante el localhost.

Hasta donde yo entiendo, el controlador ODBC para mySQL es independiente de la plataforma que uses, no es exclusivo de phpmyadmin en localhost.

Pero como te dije en mi primera respuesta, no controlo ADO ni su forma de conectar con otros sistemas. Lamento no haberte podido ayudar.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas