FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Table1:Datase not in Edit o Insert Mode
Por favor, ya no se que hacer, parece mentira, estoy tratando de hacer un pequeño proceso que me cambiara el valor de un campo en todos los registros de una tabla o sea que solo quiero que se le asigne un valor en especifico a todos los registro en ese campo, para esto pongo en el form un TTable, un TDatabase y un boton que me ejecutará el código, y en este pongo el siguiente código:
Código:
procedure TForm1.Button1Click(Sender: TObject); Var a:Integer; begin Database1.Connected:=True; Table1.Active:=true; Table1.Edit; Table1.CachedUpdates:=True; Table1.First; For a:=1 to Table1.RecordCount do Begin Table1.FieldByName('Estado').Value:='Pendiente'; Table1.Post; Table1.Next; end; Table1.ApplyUpdates; end; Gracias.
__________________
http://www.imgsharing.com/uploads/1121174648007_A1.jpg |
#2
|
||||
|
||||
Hola.
El Table1.Edit lo tienes que hacer sobre cada registro a modificar, por tanto lo tienes que poner justo antes de la linea en que modificas el campo. Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#3
|
||||
|
||||
Yeeesss¡¡¡ si funcionó¡¡ muchas gracias... no se me vuelve a olvidar...
__________________
http://www.imgsharing.com/uploads/1121174648007_A1.jpg |
#4
|
||||
|
||||
Por si te interesa JamesBond (si no, por favor ¡no dispares! ) creo que la actualización que haces podría ser más sencilla y eficiente usando un Query:
Código:
Query1.SQL.Text = 'update tabla set Estado = pendiente'; Query1.ExecSQL; |
|
|
|