Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

ERROR al recuperar datos vb - mysql (ñ y tildes)

Estas en el tema de ERROR al recuperar datos vb - mysql (ñ y tildes) en el foro de Visual Basic clásico en Foros del Web. Estoy trabajando con vb6 y mysql, cuando hago una consulta a la DB, visual no me muestra de los datos recuperados ni las ñ ni ...
  #1 (permalink)  
Antiguo 19/04/2013, 07:22
 
Fecha de Ingreso: abril-2013
Mensajes: 12
Antigüedad: 11 años
Puntos: 0
ERROR al recuperar datos vb - mysql (ñ y tildes)

Estoy trabajando con vb6 y mysql, cuando hago una consulta a la DB, visual no me muestra de los datos recuperados ni las ñ ni tildes, pero en la DB si figuran. El string de conexion que uso es el siguiente:

cneven.Open "DRIVER={MySQL ODBC 3.51 Driver};DATABASE=general;SERVER=localhost;UID=root ;password=root;PORT=3306;CHARSET=utf8;"

Gracias!!
  #2 (permalink)  
Antiguo 23/04/2013, 18:07
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Respuesta: ERROR al recuperar datos vb - mysql (ñ y tildes)

Es una aplicacion web o escritorio?

Ya checaste asignar el encoding ? para nuestro idioma te sirve el ISO-8859-1

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 23/04/2013, 18:29
 
Fecha de Ingreso: abril-2013
Mensajes: 12
Antigüedad: 11 años
Puntos: 0
Respuesta: ERROR al recuperar datos vb - mysql (ñ y tildes)

hola RootK, es una aplicacion de escritorio, no se a que te referis con el encoding, en mysql tengo el charset en utf8 y collate en utf8_general_ci, sinceramente probe de todo y no hay resultado
  #4 (permalink)  
Antiguo 23/04/2013, 19:55
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: ERROR al recuperar datos vb - mysql (ñ y tildes)

Pregunta: Si MySQL tiene su propio conector .Net, ¿por qué usas el ODBC, que es menos fiable?
Estás desperdiciando recursos y capacidades de la librería .Net de MySQL...

Por otro lado, si a estas alturas no sabes lo que es un encoding, y cómo maneja VB.Net internamente los tipos de caracteres, será mejor que vayas leyendo la documentación...
Dicho en pocas palabras: Si MySQL te está devolviendo UTF8, pero tu lo metes en una variable u objeto que lo interprete como ANSI, o UNICODE, simplemente tienes un conflicto de codificaciones.
Una "Ñ" en ANSI, en Unicode, o UTF8, no es lo mismo.

Mira este link, puede que te inspire un poco: http://stackoverflow.com/questions/5...scii-in-vb-net
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 25/04/2013, 07:05
 
Fecha de Ingreso: abril-2013
Mensajes: 12
Antigüedad: 11 años
Puntos: 0
Respuesta: ERROR al recuperar datos vb - mysql (ñ y tildes)

hola gnzsoloyo, me parece que como moderador podrias hacer criticas con un tono mas constructivo, creo que el foro esta para preguntar y no hay que tener un determinado nivel para hacerlo, segundo, estoy trabajando en vb6, no en vb.net como lo aclare arriba...
Seguramente me confundi yo de seccion, pero la cosas se pueden decir con un tono menos hostil.
Saludos

Última edición por nicoesteban; 25/04/2013 a las 07:12
  #6 (permalink)  
Antiguo 25/04/2013, 08:37
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: ERROR al recuperar datos vb - mysql (ñ y tildes)

Cita:
Iniciado por nicoesteban Ver Mensaje
estoy trabajando en vb6, no en vb.net como lo aclare arriba...
Quizás es porque has abierto el hilo en el foro de .NET y no en el de Visual Basic?
__________________
Aviso: No se resuelven dudas por MP!
  #7 (permalink)  
Antiguo 25/04/2013, 08:47
 
Fecha de Ingreso: abril-2013
Mensajes: 12
Antigüedad: 11 años
Puntos: 0
Respuesta: ERROR al recuperar datos vb - mysql (ñ y tildes)

quiza es lo que acabo de poner arriba...
  #8 (permalink)  
Antiguo 25/04/2013, 08:49
 
Fecha de Ingreso: abril-2013
Mensajes: 12
Antigüedad: 11 años
Puntos: 0
Respuesta: ERROR al recuperar datos vb - mysql (ñ y tildes)

Cita:
Iniciado por nicoesteban Ver Mensaje
Seguramente me confundi yo de seccion, pero la cosas se pueden decir con un tono menos hostil.
Saludos
quiza es lo que acabo de poner.. en fin, no merece la pena que me ponga a discutir, perdon al que le acosione tantas molestias con mi pregunta
  #9 (permalink)  
Antiguo 29/04/2013, 21:53
 
Fecha de Ingreso: abril-2005
Ubicación: Piura - Perú
Mensajes: 189
Antigüedad: 19 años
Puntos: 0
Respuesta: ERROR al recuperar datos vb - mysql (ñ y tildes)

Me parece que el problema general es saber ayudar antes que observar, pero ese no el tema de la consulta de nicoesteban, de la cual yo he sufrido bastante y aprendí, porque creo que nadie nace con dichos conocimientos, los aprende.

A ver nicoesteban; yo también uso ODBC, y creo que con el que uno más se haga mas facil pues que siga... aprendiendo..

te explico como hago yo

primero en el boton o evento en donde va a funcionar la consulta colocas este codigo

Código vb:
Ver original
  1. Set cn = New Connection
  2. cn.ConnectionString = "DRIVER={" & driver1 & "}; SERVER=" & host1 & ";DATABASE=" & db1 & ";USER=" & usuario1 & ";PASSWORD=" & contraseña1 & ";port:" & puerto1 & ";OPTION=3"
  3. cn.CursorLocation = adUseClient
  4.  
  5. cn.Open
  6.  
  7. rs1.Open "TU CONSULTA MYSQL", cn, adOpenDynamic, adLockOptimistic
  8.  
  9. 'Entonces para leer los campos seria
  10. text1.text = rs1.Fields("codigo")
  11. 'Siendo codigo el nombre del campo.

Luego en la declaraciones globales osea en la linea 1 de tu ventana le das varios Enter para poder escribir tus declaraciones globales por ejemplo

Código vb:
Ver original
  1. Option Explicit
  2. Dim cn As Connection
  3. Dim rs1 As Recordset
  4.  
  5. 'viste que hay 2 lineas arriba del Private sub AGREGAR.... esas son importantes para tu
  6. 'conección el dim cn, y el dim rs1 (que hace referencia a cada consulta), consulta2 seria rs2
  7. 'el rs es un valor que le asigno
  8.  
  9. Private Sub AGREGRAR_USUARIOS_Click()
  10. agregar_usuarios.Show
  11. End Sub

Ahora la linea que dice cn.ConnectionString es donde va

Código vb:
Ver original
  1. cn.ConnectionString= "DRIVER={MySQL ODBC 3.51 Driver};DATABASE=general;SERVER=localhost;UID=root ;password=root;PORT=3306;CHARSET=utf8;"

En el ejemplo 1 que te mande en la parte superior, veras que solo dice driver1, o host1
porque antes a esas variables tienen valores.

Espero la guia te ayude, recuerda que el driver de ODBC lo descargas de aqui :

http://dev.mysql.com/downloads/connector/odbc/

ah un ultimo consejo, la ultima versión es la 5.2.4a por ejemplo, entonces para asegurarte el nombre del controlador instalado, te vas panel de control luego a ODBC y a la pestaña controladores ahi veras en la lista "MySQL ODBC 5.24a Driver", entonces este nombre completo lo colocas en la variante driver de la linea de cn.ConnectionString

Etiquetas: .net, conexion, mysql, sql, vb, visual
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:48.