Retroceder   Foros del Web > Temas generales de computación > Programación > Visual Basic

Respuesta
 
Herramientas Desplegado
Antiguo 27-sep-2005, 09:54   #1 (permalink)
rojobe55 está en el buen camino
 
Fecha de Ingreso: febrero-2003
Ubicación: Costa Rica
Mensajes: 122
Enviar un mensaje por ICQ a rojobe55 Enviar un mensaje por Yahoo  a rojobe55
Pregunta Actualizar MySQL desde VB6

Hola a todos...

Tengo el siguiente problema...

1) conecto a una base MySQL en localhost desde vb6 asi:

CxnStr = "Driver={MySQL ODBC 3.51 Driver};" & _
"Server=localhost;Option=16809984;" & _
"Database=" & archivo & ";"

'Abro la conexion
Set Cxn = New Connection
Cxn.CursorLocation = adUseClient '---- ¿no se para que es este adUseClient? pero no importa...
Cxn.Open CxnStr

TODO OK...
y abro el recorset asi:

Set rec = New Recordset
rec.Open "Select * From " & tabla, Cxn, adOpenDynamic, adLockOptimistic

HASTA AQUI PERFECTO...


2) Todo bien (leo los registros) pero cuando trato de actualizarlo.... desastre!!!

Probé:
rec.Update rec!campito, txt.Text 'y nada... err: El objeto no admite esta propiedad!!!

sin embargo en inmediato.

?rec.Supports(adUpdate)
Verdadero

y add y delette tambien verdadero.... ¿?

Probé tambien alguna otra forma de actualizar pero nada...
Se que si le hago una especie de open "UPDATE ....." a la conexión lo puedo acutalizar,
pero debería poder utilizar el recordser ¿no?...

Desde ya gracias.
Saludos.
rojobe55 está desconectado   Responder Citando
Antiguo 27-sep-2005, 10:09   #2 (permalink)
Colaborador
GeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy pronto
 
Avatar de GeoAvila
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 3.780
Enviar un mensaje por MSN a GeoAvila Enviar un mensaje por Yahoo  a GeoAvila
cxn.execute "Update Facturas set nit_cliente = 'GC-CF' Where nit_cliente ='C F'"

en esta consulta le estoy diciendo que en la tabla "Facturas" en el campo nit_cliente, busque todos los "C F" y los convierta en "GC-CF", probá asi y me decis

nos vemos.
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com
GeoAvila está desconectado   Responder Citando
Antiguo 27-sep-2005, 10:16   #3 (permalink)
rojobe55 está en el buen camino
 
Fecha de Ingreso: febrero-2003
Ubicación: Costa Rica
Mensajes: 122
Enviar un mensaje por ICQ a rojobe55 Enviar un mensaje por Yahoo  a rojobe55
Hola GeoAvila, antes que nada gracias por responder tan rápido... no hacia 10 minutos que puse el post.

Si, asi se que se puede hacer, como te digo abajo:

"Se que si le hago una especie de open "UPDATE ....." a la conexión lo puedo acutalizar, pero debería poder utilizar el recordser ¿no?... "

Si, el execute lo habia probado y funcionaba, pero tiene que poderse desde el recordset...

Igual muchas gracias. Si no encuentro otra solucion lo haré como vos decis.
Saludos.
rojobe55 está desconectado   Responder Citando
Antiguo 27-sep-2005, 10:26   #4 (permalink)
Colaborador
GeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy pronto
 
Avatar de GeoAvila
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 3.780
Enviar un mensaje por MSN a GeoAvila Enviar un mensaje por Yahoo  a GeoAvila
intenta asi..

Set rec = New Recordset
rec.Open "Select * From " & tabla, Cxn, adOpenStatic, adLockOptimistic

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com
GeoAvila está desconectado   Responder Citando
Antiguo 27-sep-2005, 10:39   #5 (permalink)
rojobe55 está en el buen camino
 
Fecha de Ingreso: febrero-2003
Ubicación: Costa Rica
Mensajes: 122
Enviar un mensaje por ICQ a rojobe55 Enviar un mensaje por Yahoo  a rojobe55
Hola Geoavila
Quizas debería haber echo la pregunta de la siguiente manera...

Como funciona el metodo update en el recordset?
Es posible hacerlo funcionar (luego de todo lo anterior, conexión etc.) asi:

rec.Update rec!campito, txt.Text

o

set rec.update (rec!campito, txt.text)

Se necesita alguna especificación extra tipo

rec.Supports (adUpdate) 'o algo mas...

o la numeración en Option=nnnnnn;" al abrir la conexión?

???? es posible la utilización de este metodo en una conexión a mysql y utilizar las ventajas de ADO???

Desde ya muchas gracias...
rojobe55 está desconectado   Responder Citando
Antiguo 27-sep-2005, 10:43   #6 (permalink)
Colaborador
GeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy pronto
 
Avatar de GeoAvila
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 3.780
Enviar un mensaje por MSN a GeoAvila Enviar un mensaje por Yahoo  a GeoAvila
rec!campito = txt.text
rec.update
asi lo uso comunmente pero según veo en otros ejemplo tambien se puede usar asi.
rec!campito = txt.text
rec.UpdateBatch adAffectAll

asi. de esta manera funciona el update

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com
GeoAvila está desconectado   Responder Citando
Antiguo 27-sep-2005, 10:54   #7 (permalink)
rojobe55 está en el buen camino
 
Fecha de Ingreso: febrero-2003
Ubicación: Costa Rica
Mensajes: 122
Enviar un mensaje por ICQ a rojobe55 Enviar un mensaje por Yahoo  a rojobe55
Bueno ,si, eso yo tambien tenia entendido, pero al usarlo de esa forma me da el siguiente error

Error en el metodo 'Update' del objeto '_Recordset'

Será por algún otro motivo que no me estoy dando cuenta...

Gracias de nuevo.
rojobe55 está desconectado   Responder Citando
Antiguo 27-sep-2005, 12:19   #8 (permalink)
Colaborador
GeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy pronto
 
Avatar de GeoAvila
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 3.780
Enviar un mensaje por MSN a GeoAvila Enviar un mensaje por Yahoo  a GeoAvila
m.. no me queda nada mas que decirte que probes con otra tabla para ver si el problema no es la tabla.

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com
GeoAvila está desconectado   Responder Citando
Antiguo 27-sep-2005, 15:23   #9 (permalink)
rojobe55 está en el buen camino
 
Fecha de Ingreso: febrero-2003
Ubicación: Costa Rica
Mensajes: 122
Enviar un mensaje por ICQ a rojobe55 Enviar un mensaje por Yahoo  a rojobe55
Buena idea, no se me ocurrió, uno piensa que tiene que funcionar si o si y el árbol no me deja ver el bosque...

Gracias por la ayuda; si funciona aviso...
Saludos.
rojobe55 está desconectado   Responder Citando
Antiguo 27-sep-2005, 17:10   #10 (permalink)
rojobe55 está en el buen camino
 
Fecha de Ingreso: febrero-2003
Ubicación: Costa Rica
Mensajes: 122
Enviar un mensaje por ICQ a rojobe55 Enviar un mensaje por Yahoo  a rojobe55
Aviso, aviso.... !!
Si funciona.... borre la tabla, la volvi a cargar y hace la actualizacion correctamente...

UNA VEZ, SOLO LA PRIMERA VEZ y nunca mas... vuelvo a borrar la tabla, la vualvo a cargar y actualiza perfecto. La segunda vez (y otras) da error...

Será que al cerrar rompo algo??

luego del

rec.update

solo hago

Cxn.Close 'cerrando la conexión

¿por alli estará el prolbema????

Gracias.
Saludos.
rojobe55 está desconectado   Responder Citando
Antiguo 28-sep-2005, 08:48   #11 (permalink)
Colaborador
GeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy pronto
 
Avatar de GeoAvila
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 3.780
Enviar un mensaje por MSN a GeoAvila Enviar un mensaje por Yahoo  a GeoAvila
estas dejando algun campo de fecha hora vacio ese puede se el problema. revisa que todos los campos esten correctamente llenos..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com
GeoAvila está desconectado   Responder Citando
Antiguo 29-sep-2005, 06:04   #12 (permalink)
rojobe55 está en el buen camino
 
Fecha de Ingreso: febrero-2003
Ubicación: Costa Rica
Mensajes: 122
Enviar un mensaje por ICQ a rojobe55 Enviar un mensaje por Yahoo  a rojobe55
Gracias GeoAvila, pero ... sere curioso... es "obligatorio" al actualizar la tabla, actualizar TODOS los campos?

Solo necesitaba actualizar uno solo...

Saludos.
rojobe55 está desconectado   Responder Citando
Antiguo 29-sep-2005, 08:23   #13 (permalink)
Colaborador
GeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy prontoGeoAvila llegará a ser famoso muy pronto
 
Avatar de GeoAvila
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 3.780
Enviar un mensaje por MSN a GeoAvila Enviar un mensaje por Yahoo  a GeoAvila
unicamente al agregar el registro tenes que estar segura que todos los campos esten correcamente llenos..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com
GeoAvila está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 23:33.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93