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...
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:
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!
Creo que nunca he usado un objeto data, pero casi seguro que será así:
bd.Recordset.AddNew
bd.Recordset.Fields(0) = "juanito"
bd.Recordset.Fields(1) = 88
bd.Recordset.Update
Saludos.
Amigo, eres grande! gracias!... estuve al borde del suicidio!... bueno al borde de ponerme a escuchar a RBD que es casi lo mismo...
.
ignorantev1.1
De que parte de méxico eres?
Dulces Lunas!¡.
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
Hola pues con otro problema de lo mismo :-\
Para insertar un nuevo dato hice algo asi:
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?
http://www.recursosvisualbasic.com.ar/htm/utilidades-codigo-fuente/formulario-abm-con-access-ado.htm
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!!!
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"?
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: