Conectar Visual Basic 6 (vb6) con MySQL, pasos previos de configuración para eludir problemas o errores

Bienvenidos a Ver Tutoriales.com

Despues de varios correos preguntandome con problemas de como conectar con mysql desde VB6, me he decidido a escribir este artículo.

Es cierto que el código que tengo en otro tutorial, solo explica la parte de programación y por ningún otro sitio se comenta la configuración de MySQL, así que voy a hacer una redacción de los problemas más comunes a la hora de acceder a MySQL desde el exterior o fuera del servidor donde se aloja la base de datos. Así que vamos allá.

Lo primero es crear la base de datos, y esta tiene que tener permisos para acceder desde el exterior, es decir no la configureis para localhost, sino el acceso está restringido desde el propio server.

Segundo, debeis de configurar un usuario con los permisos a esta base de datos, que soporte todas aquellas funciones que vaya a utilizar, ya sea creación, inserción (insert), actualización (update) o eliminación (delete).

Tercero, para conectar vb6 con MySQL debeis de tener instalados los drives ODBC en vuestro equipo, estos drivers son necesarios para la comunicación de vuestra aplicación con el gestor de la base de datos MySQL. Estos drivers podeis descargarlos directamente de la web de MySQL.

Cuarto, en algunos servidores cambian el puerto de acceso al servidor, por lo que en la cadena de conexión de visual basic 6 (vb6) debeis de cambiarlo tambien para que sea al mismo puerto.

Creo que estos 4 puntos son los más importantes, mi consejo es que intenteis primero conectar con la base de datos en local, es decir, instalar el servidor de MySQL en vuestro PC y despues de haber seguido los pasos de la creación de la base de datos, permisos, etc… Realiceis la conexión desde la aplicación, una vez conseguido en local, aventuraros en un servidor remoto.

Espero que con esta explicación le quede más claro a aquellos que me han escrito y a muchos otros que estoy seguro le haya podido dar problemas.

Si teneis cualquier problema que no sepais resolver, podeis comentarlo y os lo contestaré gustosamnte.

Un saludo!

Te puede interesar:

31 comentarios

  • Ornella commented on 7 octubre, 2010 Reply

    Hola, acabo de empezar con VS5 y la verdad estoy muy perdida, yo estudio ing. en informática en el DuocUC y el profe nos dijo que nos conectáramos a una base de datos, en este caso mysql … y no sé nisiquera por dónde empezar, lo malo es que justo falté a esa clase, si puedes ayudarme sería muy bueno 🙂

    • VideoTutoriales commented on 7 octubre, 2010 Reply

      Buenas Ornella,

      Si necesitas el código para acceder a la base de datos en MySQL puedes ver este otro artículo:Conectar Visual Basic 6 (vb6) a MySQL

      Si lo que necesitas es instalar MySQL, actualmente no tenemos ningún artículo que se base exactamente en MySQL, puedes descargarlo desde la web oficial http://www.mysql.com y descargarte las herramientas MySQL Tools que trae varias aplicaciones como e MySQL administrator o MySQL Query Browser, este último para manejar las bases de datos, tablas, registros, etc, para estas herramientas si tenemos videotutoriales:
      Videotutorial de Query Browser
      Videotutorial de MySQL Administrator

      Por ahí puedes empezar, aunque la explicación es bastante rápida, te darán pié a realizar cosas más complicadas.

      Creo que con eso ya tendrías una base, por una parte la creación de la base de datos y por otro la conexión desde Visual Basic 6.

      Si necesitas algo más, escribenos 🙂

  • Romeo Valencia Gómez commented on 20 octubre, 2010 Reply

    Muchas Gracias por tu aporte
    Saludos

  • Roberto commented on 25 febrero, 2011 Reply

    mi problema es el siguiente, programa en vb 6 desde 2006 y para las bases de datos accees,, y haora nesesito un proyecto para la univercidad, los requerimientos es q la bd sea de mysql y la aplicacion de vb 6.0 y estado investigando y masomenos entiendo lo que dices pero seria jenial,,,,

    que dire super genial,, un tutorial que explicara paso a paso este proceso, crear la bd, tablas, y los permisos con capturas de pantalla algo mas detallado, acuerdata que quisa la mayoria de personas que entre a un tuto como este sean nobatos,

    y tambien seria exelente subir todas las herramientas a un cervidor y dejarel el link especifico, ya q en la pag hay tambien muchas opciones que puedes confundir y por bajarte a chana te bajas a juana jejeje

    y si esto es mucho pedir mil disculpas,

    muchas gracias de ante mano.,,

    • VideoTutoriales commented on 25 febrero, 2011 Reply

      Si ya has conectado a Access no debiera de resultarte complejo el configurarlo para MySQL realmente lo que haces es instalar el driver ODBC para MySQL y se sigue la misma metodología que con Access. Hay otro tutorial http://www.vertutoriales.com/index.php/conectar-a-mysql-con-visual-basic-vb6-usando-odbc/ En este se explica más extensamente como se ha de realizar la conexión. En este último era por que ví que aún había algunas cosas que no estaban explicadas y que creia obvias, por eso expliqué luego estos pasos. Así que acude primero al otro que es el primero 😀

      El realizar el video ahora mismo lo veo dificil por el tiempo del que dispongo. Y con bajarse cosas, solo hace falta el driver.

      Un saludo!

  • Roberto commented on 26 febrero, 2011 Reply

    Ya estube leyendo, y ya me esta tomando forma todo esto, boy a probar, ya baje mySQL y el driver como dises,

    mi sorpresa fue que mysql en donde crearia la bd era una consola y yo busq busq porr todos lados jejejej

    luego que comprendi ley un otro tuto sobre los comando nesesarios para la creacion de la bd,

    bueno mi plan este aber si me lo confirmas,

    1: diseñar la base de datos segun los requerimientos

    2:crearla aciendo uso de MySQL Command Line Client,

    3: crear la aplicacion en vb 6 segun la base de datos

    4; en la ocacion anterior q conecte vb con acces atrabes de ODBC,,
    se ba al panel de control, herrm, adm, y origen de datos ODBC y alli creaamos un DSN de usuario pero en este caso en lugar de accees sera MYSQL

    5; realizar la conexion con el codigo del otro tuto,

    bueno esta es la concepcion que tengo asta haora, me gustaria que me verificaras el dato

    y de ante mano MUCHAS GRACIAS A VERTUTORIALES esto me ha ayudado mucho

  • Roberto commented on 27 febrero, 2011 Reply

    la verdad no me gustaba la consola,,, ya que estaba acostrumbrado al ambiente de vb y acces jejeje

    ¿Entonses puedo acer todo eso desde el MySQL Browser,

    crear base,
    tablas
    campos
    insertar
    y modificar registros,

    hay un problema con algunos videotutoriales, este me dice que solo dura 16 seg,, no se si esq est tuto solo es text o hay algun prob con el video,

    pero ya ley, los demas tutos ,, sentencias basicas, uso del MYSQL BROWSER
    y los dos sobre la conexion,

    pero no se donde descargar el Browser lo busq en la web oficial y no lo encuentro,,,,
    quisiera la suite completa con todas las herramientas nesesarias,

    Nuevamente Bery Bery gracias,, el sitio esta exelente es
    de mucha utilidad
    Saludos,,,,,,….

  • VideoTutoriales commented on 27 febrero, 2011 Reply

    En algunos no existe video, solo son tutoriales de texto ya que quedan explicados en los que si tienen video, o en su caso carecerán de importancia la explicación visual.

    Disculpa, el Query Browser, Administrator y demás aplicaciones vienen en una suite, en el tiempo de los video-tutoriales aún estaban por separado.

    Puedes descargarlo desde:
    http://www.mysql.com/downloads/workbench/

    Un saludo!

  • Roberto commented on 2 marzo, 2011 Reply

    Hermano, Muchas Gracias yalo tengo,,, un poco de aqui un poco de allla,

    Estos videos estan exelentes
    http://www.youtube.com/watch?v=Kkai6H4zHQo&feature=related

    Saludo,2

    cualquier cosa, seguire conla preguntadera jajajaj

    • VideoTutoriales commented on 2 marzo, 2011 Reply

      Me alegro, si has encontrado algunas diferencias o algo, podrías dejarlo en un comentario y así para los venideros que lo sepan.

      Gracias 😀

  • Roberto commented on 2 marzo, 2011 Reply

    Exelente, primero que todo, quiero destacar que inicie con MYSQL Hace tan solo una semana y no tenia ni idea,

    Y para Los Que estan igualistos que mi, Hay les ba el dato,

    el problemas esque si somos nuevos y an damos por todos lados bamos a terminar bajando, un monton de programas que podrian terminar confundiendo, para los que se encuentran asi,,
    trankilos

    lo unico que hay que descargar es el: MySQL Server 6.0

    y esta suite: http://www.mysql.com/downloads/workbench/

    la cual podremos usar, para todo lo nesesario, en cuanto ala creacion de la base de datos,,

    y si queremos un apoyo extra, que no cae nada mal, y con el permiso de VER TUTORIALES esta coleccion de 11 videos que explica con mucho detalle el uso de la suite: MySQL Workbench 5.2 CE

    Saludos jejjejje

    • VideoTutoriales commented on 2 marzo, 2011 Reply

      Con permiso por supuesto… Pero no has dejado el enlace Roberto 😀

  • Roberto commented on 3 marzo, 2011 Reply

    Corejido,, Aqui esta el enlace,

    http://www.youtube.com/watch?v=oNn30HRJPr0

    este es el 1 son mas de 10, en ingles y español,

    Saludo2

    • VideoTutoriales commented on 3 marzo, 2011 Reply

      Oye Roberto no te interesaría colaborar con la web?

      Toda la ayuda que se pueda aportar vendrá bien 🙂 Tampoco hace falta que redactes tutos enormes, con poner referencias a videos y una breve explicación de lo que va el video y de tu experiencia con este es más que suficiente.

      Piensatelo 🙂

  • Roberto commented on 3 marzo, 2011 Reply

    Esta Echo. Me Gusta Aprender, Y mucho Mas Enseñar, Asi se Aprende Doble,

    Salud2

  • Roberto commented on 14 marzo, 2011 Reply

    q SE ISO EL MODERADOR DEL FORO, LO ANDO BUSCANDO TENGO UNA PREGUNTITA

  • VideoTutoriales commented on 14 marzo, 2011 Reply

    Puedes hacerla en el foro si no tienes dudas sobre ningún tutorial 🙂

  • Nahuel commented on 15 julio, 2012 Reply

    Estoy intentando armar una pequeña aplicación para bibliotecas, debo hacerla en visual basic 6.0, la conecto a mysql, pudo agregar y quitar registros, pero me gustaria saber si puedo cargar los datos de conexion desde un archivo externo al form del visual asi este no es estanco y puede ser mas funcional?

    • VideoTutoriales commented on 16 julio, 2012 Reply

      Sin problema, puedes guardarlo en un archivo de texto y cargar esos datos de ese archivo de texto.

  • Lbentancur commented on 4 diciembre, 2012 Reply

    Quiero conectar una base que esta mysql pero no se como hacerlo la base la cree desde mysql y le cargue unos datos donde le doy el usuario o todos los usuarios pueden ver la tabla si no le asigno uno alguien tiene el codigo porque el codigo que tengo me marca un error 1251 en tiempo de ejcucion client does not support autentication protocol requested by server consider upgrading mysql client
    Alguien me puede dar una mano Saludos

    • VideoTutoriales commented on 5 diciembre, 2012 Reply

      Necesitas ponerle una clave a tu MySQL, vete a la consola y escribe:

      SET PASSWORD FOR ‘user’@’host’ = OLD_PASSWORD(‘password’);

      Cambia el ‘user’ por el tuyo, el ‘host’ por tu host o pones localhost y en ‘password’ pues tu clave y a funcionar!

      Un saludo!

  • Alberto commented on 21 marzo, 2013 Reply

    Tengo la misma base de datos en dos servidores diferentes, cuando me conecto por workbench pongo los mismos datos(excepto la ip) pero en el segundo servidor tengo que poner el puerto ssh.

    En el primer servidor
    SSH Hostname: ip_servidor_ssh
    SSH Username: mi_usuario_ssh
    SSH Password: mi_password_ssh
    Mysql Hostname: 127.0.0.1
    Mysql Server Port: 3306
    Username: mi_usuario_mysql
    Password: mi_password_mysql

    En el segundo servidor
    SSH Hostname: ip_servidor_ssh:puerto_ssh
    SSH Username: mi_usuario_ssh
    SSH Password: mi_password_ssh
    Mysql Hostname: 127.0.0.1
    Mysql Server Port: 3306
    Username: mi_usuario_mysql
    Password: mi_password_mysql

    Con esos datos me conecto a las bases de datos.
    El problema es en VB6 ya que al no poner el puerto del SSH Hostname no me puedo conectar al segundo servidor.
    ¿Hay alguna forma de especificar el puerto ssh?

    • VideoTutoriales commented on 22 marzo, 2013 Reply

      Buenos días pues tal y como comentas:
      SSH Hostname: ip_servidor_ssh:puerto_ssh

      Prueba así: 222.84.84.84:22

      Pásale la ip y el puerto, supongo que la conexión debiera de funcionar de esa manera. Lo que no entiendo es que si vas a conectarte a mysql por el puerto que indicas, no lo pongas en ese puerto, en realidad el resto de datos son omisibles, es decir, si tienes:

      Mysql Hostname: 127.0.0.1 <-- aquí va la ip a donde conectas Mysql Server Port: 3306 <-- aquí indicarías el puerto Username: mi_usuario_mysql Password: mi_password_mysql El resto de parámetros para la base de datos no sé para que lo usas 🙂

  • Griselda commented on 26 marzo, 2013 Reply

    hola, a ver si me pueden dar una mano….tengo un sistema ya funcionando (1 servidor y 3 terminales), se formateo una terminal y dejo de hacer el alta de datos me tira error:
    error 2147217900 (8004 de 14) en tiempo de ejecucion:
    my sql ODBC 3.51 driver. mysql-4.020a-nt. You have an error in your sql syntax. Chek de manual that corresponds your mysql server version for de right syntax to use near 000, 118643,20130311120740) at line 1

    ademas de este error, hay un campo que lleva decimales y al ingresar 20.01 me toma 2001, asi que al hacer las sumas o restas me da numeros absurdos…
    Todo esto despues de formatear la terminal.
    Espero que me puedan ayudar…muchas gracias.

    • VideoTutoriales commented on 27 marzo, 2013 Reply

      Posiblemente el problema venga por la configuración regional y de idioma, revisa como tienes puesta la separación de miles y de decimales. Quizás por eso también te está creando la sentencia sql mal con el signo decimal, revisa como están la configuración de las otras terminales.

      Salud!

  • griselda commented on 29 marzo, 2013 Reply

    Hoy me dijeron que podia ser la internalizacion…lo mismo que vos me decis. Voy a probar a ver si es eso, cualquier cosa aviso…gracias por tu ayuda.

    • VideoTutoriales commented on 1 abril, 2013 Reply

      Si es eso, problema resuelto. Yo tuve algunos problemas con el . (punto) y la , (coma) con algunos clientes que no traen por defecto una opción u otra. Asi que al final generé una función como Val() pero que era ValDk() y en ella pasaba el ‘.’ (punto) a ‘,’ (coma) y luego realizaba el Val() de manera que me lo hacía correctamente dando igual el tipo de símbolo que utilizara para el decimal.

  • marcos commented on 26 enero, 2014 Reply

    Me gusta usar con MySQL – herramienta gratuita de Valentina Studio, hace todo lo que necesito, y lo hace muy bien http://www.valentina-db.com/en/valentina-studio-overview

  • andres commented on 26 noviembre, 2016 Reply

    Hola,,a ver si me pueden ayudar,,,hice una aplicación en visual básic 6 con MySQL en mi pc y funciona,,ahora instaló la aplicación en otro pc y apuntó a la base de datos en el pc 1 y funciona , pero como puedo refrescar los datos en los 2 pc automático,,ejemplo, si en la pc1 y pc2 en pantalla muestra un 5 y en pc2 cambio el dato en la base de datos que está en el pc1 ,y pongo un 6 ,,en pc2 veo muestra 6 pero el pc1 sigue estando el 5

    • Carlos Dk commented on 28 noviembre, 2016 Reply

      Tendrás que volver a refrescar esa información, tienes dos maneras, o lanzas la consulta cada X tiempo desde ambos pcs, o lanzas un push desde el servidor para indicar que hay actualizaciones utilizando sockets por ejemplo.

      La primera manera entiendo que es mucho más sencilla y no sé realmente la aplicación que necesidad tiene de estar actualizándose a tiempo real. También está la opción de dejar al usuario que actualice pulsando un botón.

      El problema como tal, es que una vez recogida la información de la consulta, no se volverá a refrescar hasta que se vuelva a lanzar la consulta, pero claro, para sincronizar tantos pcs como quieras, tiene que haber un punto en común.

      Espero que te sirva, cualquier cosa por aquí estoy!

      Salud!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *