ADO... añadir un registro nuevo

andru
29 de Diciembre del 2003
hola tengo um problemita resulta que tengo una base de datos en access 2000 y un formulario ue supuestamente tendria que servir entre otras cosas para ingresar registro nuevos pero me manda un error este es el codigo


Private Sub cmdAñadir_Click()


Recorset.AddNew

Text2.Text = "Nuevo"

Recorset.Update

Recorset.MoveLast

End Sub

me larga el error que dice "el numero de filas con cambios pendientes excedio el limite definido"


SanMiguel
29 de Diciembre del 2003
No veo dónde cambias el contenido del registro, es decir después que le dices AddNew tienes que decirle algo como:
Recordset.Fields(nombre del campo)= Text2.Text
y luego recordset.Update
Espero que sea esa tu duda.

andru
29 de Diciembre del 2003
disculpen que no fui demaciado claro tengo un boton que se supone que anade un registro (cmdAñadir) y otro (cmdAtualizar) que tiene el siguente codigo


Private Sub CmdActualizar_Click()


With Recorset
'
.Fields("Nombre") = Text2 & ""
.Fields("Apellido") = Text3 & ""
.Fields("Direccion") = Text4 & ""
.Fields("Telefono") = Text5 & ""
.Fields("mail") = Text6 & ""

.Update

End With

End Sub


pero lo que pasa ahora es lo siguiente hago clik en el boton añadir y el campo autonumerico cambia escribo los datos y hago clik en actualizar
pero no hace nada no veo el registro nuevo igual voy a la base de datos y la habro con access y no hay ningun registro nuevo pero si vuelvo a cargar el programa el campo autonoumerico me marca 9
me cuenta el ultimo que agregue




kinoscar
29 de Diciembre del 2003
lo que veo en tu codigo es que estas haciendo un addnew pero no estas agregando ningun registro y luego haces un update

tu codigo deberia ser asi

Recorset.AddNew
recordset.fields("nombre").value="hola"
Recorset.Update
Recorset.MoveLast

aqui recordset.fields("nombre").value hace referencia al campo nombre de tu tabla asignada al recordset.

espero se entienda
suerte