Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: ignorantev1.1 en 4 Diciembre 2010, 04:35 AM

Título: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: ignorantev1.1 en 4 Diciembre 2010, 04:35 AM
Lo siento, hace dias hice un tema con el mismo titulo pidiendo ayuda sobre Acces y VB, despues "aparentemente" solucione el problema y decidi dar por terminado aquel tema.
Bueno pues voy con "casi" lo mismo:
Se trata de que quiero insertar, eliminar, modificar, buscar en una base de datos de acces a travez de vb6. Hay millones de manuales y he leido algunos, pero no logro encontrar alguno que realmente me ayude:

Esta es la manera en que leo los datos:

bd es un controldata...
Código (vb) [Seleccionar]

    bd.Recordset.MoveFirst
    txtNombre.text=bd.Recordset.Fields(0)
    txtEdad.text=bd.Recordset.Fields(1)
    bd.Recordset.MoveNext


No se si es la mejor forma de hacerlo, pero me funciona.

El problema es al querer insertar datos:

Código (vb) [Seleccionar]

    MsgBox bd.Recordset.Fields.Count
    bd.Recordset.AddNew
    bd.Recordset.Fields(0) = "juanito"
    bd.Recordset.Fields(1) = 88
    bd.Refresh
    bd.Recordset.MoveFirst
    MsgBox bd.Recordset.Fields.Count


por que no los inserta...

Pido de favor que me ayuden, pero OJO: busco hacerlo de esa manera, ya que hay una forma mas facil(creo yo) de ligar las cajas de texto con los campos de la base de datos, pero no quiero eso: lo que realmente quiero es trabajar con variables corrientes y con ellas modificar a placer la base de datos. Tambien hay otra forma de usar emmm, no se como llamarlo: comandos?, pero no...
gracias!
Título: Re: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: PeterPunk77 en 4 Diciembre 2010, 06:05 AM
Creo que nunca he usado un objeto data, pero casi seguro que será así:
Código (vb) [Seleccionar]
    bd.Recordset.AddNew   
    bd.Recordset.Fields(0) = "juanito"
    bd.Recordset.Fields(1) = 88
    bd.Recordset.Update


Saludos.
Título: Re: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: ignorantev1.1 en 4 Diciembre 2010, 06:11 AM
Amigo, eres grande! gracias!... estuve al borde del suicidio!... bueno al borde de ponerme a escuchar a RBD que es casi lo mismo...
Título: Re: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: BlackZeroX en 4 Diciembre 2010, 06:57 AM
.
ignorantev1.1

De que parte de méxico eres?

Dulces Lunas!¡.
Título: Re: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: karmany en 4 Diciembre 2010, 10:04 AM
Si necesitas:
bd.Recordset.Update
es porque estás utilizando un control de datos DATA.

Yo te recomiendo que uses ADO. Yo he trabajado con los dos. Esto ya se ha comentado en el foro pero si estás empezando a programar con bases de datos hazlo con ADO, hay muchísima información en la red.

Un saludo
Título: Re: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: ignorantev1.1 en 6 Diciembre 2010, 19:07 PM
Hola pues con otro problema de lo mismo  :-\

Para insertar un nuevo dato hice algo asi:

Código (vb) [Seleccionar]

sub XXX()
    Dim datos(0 To 3) As Variant
   
    datos(0) = txtNombre
    datos(1) = txtDireccion
    datos(2) = txtTelefono

    Call bdNuevo(bdMain.Recordset, datos())
end sub

Public Sub bdNuevo(tdb As Recordset, datos() As Variant)
    Dim i As Integer
    tdb.AddNew
    For i = 0 To UBound(datos)
        tdb.Fields(i) = datos(i)
    Next
    tdb.Update
End Sub


y resulta esto:

Data type conversion error!

que paso?

gracias?
Título: Re: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: ssccaann43 © en 6 Diciembre 2010, 19:30 PM
http://www.recursosvisualbasic.com.ar/htm/utilidades-codigo-fuente/formulario-abm-con-access-ado.htm
Título: Re: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: 79137913 en 6 Diciembre 2010, 19:48 PM
HOLA!!!

Digo, soy el unico loco :rolleyes: que usa DAO? :P

Igual odio las Bases de datos empaquetadas, uso texto plano. XD

GRACIAS POR LEER!!!
Título: Re: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: ignorantev1.1 en 6 Diciembre 2010, 20:03 PM
hey ssccaann43 ese ejemplo ya lo tengo desde hace tiempo y lo estuve revisando pero no me convencion mucho... de todas formas muchas gracias! :xD

Que hay con "Data type conversion error"?
Título: Re: [Ayuda] Acces y VB6 (y dale con eso)
Publicado por: ignorantev1.1 en 6 Diciembre 2010, 22:04 PM
Ya lo solucione, gracias. Bueno por si les interesa el error era el siguiente:

el Recordset que mandaba como parametro a la funcion "bdNuevo", era global: lo puse en un formulario que siempre estuviera cargado para que otros formularios lo aprovecharan y lo mandaba como parametro asi: "FormularioMain.bdMain.Recordset"

Y pues, tuve que poner uno para cada formulario y ya me funciona... :laugh: