Driver ISAM introuvable VBA Access

medbo Mensajes publicados 570 Estado Miembro -  
medbo Mensajes publicados 570 Estado Miembro -
Hola,

estoy desarrollando una pequeña aplicación de base de datos Access que debe conectarse a una base de datos MySql y vincular las tablas que allí se encuentran.

pero al ejecutar el código VBA me aparece un mensaje que dice (Controlador ISAM no encontrado)

¿de qué se trata? y ¿cómo solucionar este problema?

Gracias por vuestra ayuda.

Configuración: Linux / Firefox 26.0

--
es trabajando juntos como nos apoyamos para tener éxito

1 respuesta

  1. medbo Mensajes publicados 570 Estado Miembro 29
     
    Para ayudarte, aquí tienes la traducción al español del texto proporcionado: para que te quede claro, aquí está el código que uso:

    1- en un módulo:

    Public conx As ADODB.Connection
    Public servdb As String
    Public nomdb As String
    Public logindb As String
    Public pwddb As String
    Public optdb As Integer

    2- al abrir el formulario "menu" para establecer la conexión a la base de datos MYSQL:

    Private Sub Form_Open(Cancel As Integer)
    servdb = "localhost"
    nomdb = "BD"
    logindb = "User"
    pwddb = "pwd"
    optdb = "3"
    Set conx = New ADODB.Connection
    On Error GoTo erreur1
    conx.CursorLocation = adUseServer
    conx.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=" & servdb & ";DATABASE=" & nomdb & ";USER=" & logindb & ";PASSWORD=" & pwddb & ";OPTION=" & optdb & ""
    Exit Sub
    erreur1:
    MsgBox ("Imposible contactar con el servidor")

    End Sub

    3- al hacer clic en el botón "LIAR" para vincular la tabla "TABLE" que se encuentra en la base "BD" en MYSQL:

    Private Sub Commande0_Click()
    Dim tdfLinked As TableDef

    ' Abre la base de datos actual.
    Set dbsCurrent = CurrentDb
    ' Crea una tabla vinculada que apunta a una base de datos ODBC.
    Set tdfLinked = dbsCurrent.CreateTableDef("TABLE")
    tdfLinked.Connect = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=BD;USER=User;PASSWORD=pwd;OPTION=3"

    tdfLinked.SourceTableName = "TABLE"
    'Vincula la tabla
    dbsCurrent.TableDefs.Append tdfLinked
    'Actualiza los datos
    tdfLinked.RefreshLink

    End Sub

    ahí está el mensaje (Piloto ISAM no válido) que aparece y la línea (dbsCurrent.TableDefs.Append tdfLinked) aparece en amarillo en el modo de depuración VBA

    Gracias por la ayuda
    0