Delphi - como agregar

 
Vista:

como agregar

Publicado por christian (1 intervención) el 21/06/2007 20:05:53
hola amigos del foro de delphi quisier haserles una pregunta mas claro quisiera q me enseñen como guardar en la base de datos es desir tengon un programa con base de datos en access y no se puede guardar .
cuando ago clikc en el boton guardar

procedure TForm2.BitBtn2Click(Sender: TObject);
begin
Data Module.ADOTable1.Refresh;
end;

Y me manda un mensage que dice ' La operacion debe usar una consulta actualizable'

estoy usando Data Module, ADOConnetion, ADOTable y DataSource.
Gracias por ayudarme
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:como agregar

Publicado por waldo la potencia (1 intervención) el 21/06/2007 21:50:44
table.edit; // pone la tabla en edicion
table.post; // guarda los datos en la tabla.
table.insert; pone la tabla en modo de insercion.
table.edit;


ejemplo

Data Module.Templeado.edit;
Data Module.Templeado.post;
Data Module.Templeado.insert;
Data Module.Templeado.edit;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:como agregar

Publicado por juancho (193 intervenciones) el 22/06/2007 12:57:22
El procedimiento Refresh es para actualizar los datos que se encuentran en la BD o dentro del DataSet, esto ocurre cuando supones que se a hecho un cambio a la base de datos, es casi equivalente a:
Data Module.ADOTable1.Close;
Data Module.ADOTable1.Open;
A excepcion de que el Refresh te dara error si no hubo cambios en el DataSet(en la Tabla), yo nunca recomiendo su uso a menos que se comprenda bien el motivo por el cual se va a utilizar.
Las funciones citadas por el compañero son correctisimas, pero estas guardan los cambios dentro de la tabla (o DataSet) con Post, no asi en la BD, para guardar los cambios en la BD utiliza:

//Cuado estes seguro de que los campos han sido correctamente actualisados, insertados o llenados
//por asi decirlo:
procedure TForm2.BitBtn2Click(Sender: TObject);
begin
//Este te devolvera en enteros los errores de la BD si los hay, recomendable.
Data Module.ADOTable1.ApplyUpdates(-1);
//Esta funcion no lo hara, si hay errores solo lanzara la excepcion
//Data Module.ADOTable1.ApplyUpdates(0);
end;
Espero que te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar