Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   parametros en TUpdateSQl (https://www.clubdelphi.com/foros/showthread.php?t=20155)

lucasarts_18 07-04-2005 05:09:38

parametros en TUpdateSQl
 
Hola a todos:

¿ Cómo puedo utilizar éste componente en tiempo de ejecución (Por código) ?

A través de código se puede utilizar la propiedad InsertSQl, pero no tengo idea como se usa.

Espero una manito de ayuda.
Gracias de antemano.

Atte Aarón García A.

MasterXP 07-04-2005 05:49:53

Cita:

Empezado por lucasarts_18
Hola a todos:

¿ Cómo puedo utilizar éste componente en tiempo de ejecución (Por código) ?

Puedes modificar cada una de sus propiedades, ya sea el insert, update o delete.

ejemplo:
Código Delphi [-]
  With UpdateSQL1 DO
  Begin
  modifySQL.Text:=('');
  InsertSQL.Text:=('');
  DeleteSQL.text:=('');
  end;

Cita:

A través de código se puede utilizar la propiedad InsertSQl, pero no tengo idea como se usa.

Espero una manito de ayuda.
Gracias de antemano.

Atte Aarón García A.
Ya sabes que tienes que tener un UpdateSQL asociado al UpdateObject
de un Tquery, Osea el codigo del insert lo haras con el Tquery. ejemplo:

Código Delphi [-]
 
  With Query1 DO
  Begin
  Close;
  Unprepare;
  SQL.Clear;
  SQL.Add('Update empleados_datos Set Nombre= :ParametroNombre ');
  SQL.ADD('Where ID= :ParametroID');
  ParamByName('ParametroNimbre').AsString:=Edit1.Text;
  ParamByName('ParametroID').AsInteger:=StrToInt(Edit2.Text);
  Prepare;
  ExecSQL;

Si activas la propieda CachedUpdate del Tquery, tendras que aplicar:
Código Delphi [-]
 Query1.ApplyUpdates;
 Query1.CommitUpdates;

salu2.

lucasarts_18 08-04-2005 03:55:19

Hola MasterXP gracias por responder.

Al parecer me sale más fácil insertar datos de ésta forma :
:)

with Modulo.QryVentas do
begin
VarBol := strtoint(edtBoleta.Text);
VarTotal := strtoint(edtTotal.Text);
Close;
SQL.Clear;
SQL.Add ('INSERT INTO Ventas');
SQL.Add ('Values(:Boleta,:Fecha,:Total)');
Params[0].AsInteger := VarBol;
Params[1].AsDatetime := strtodate(edtFecha.Text);
Params[2].AsInteger := VarTotal;
ExecSQL;
end;

Ya que no entiendo muy bien el funcionamiento de TUpdateSQL.
Me gustaría que fueras un poco más explícito.
De antemano gracias.

Saludos.
Aaron.

MasterXP 08-04-2005 07:41:23

Cita:

Al parecer me sale más fácil insertar datos de ésta forma :
La verdad la unica diferenecia entre tu codeigo y el mio, es que el mio es un Update y el tuyo un Insert.

Cita:

Ya que no entiendo muy bien el funcionamiento de TUpdateSQL.
Me gustaría que fueras un poco más explícito.
De antemano gracias.
que no entiendes en realidad?

salu2.

lucasarts_18 08-04-2005 20:14:42

Hola MasterXP :

No entiende el funcionamiento de este componente, a mí entender es para trabajar con los Insert,Delete y Update.
Para que éste componente ? , si todo lo anterior se puede hacer con un TQuery ya sea para un Insert, Delete o Update.

A lo que voy yo, cuando es necesario utilizar el TUpdateSQL y por qué ?
:confused:

Saludos.
Aaron.

MasterXP 09-04-2005 03:23:34

Fuente: Ayuda de Delphi
Cita:

When the BDE-enabled dataset represents a stored procedure or a query that is not "live", it is not possible to apply updates directly from the dataset. Such datasets may also cause a problem when you use a client dataset to cache updates. Whether you are using the BDE or a client dataset to cache updates, you can handle these problem datasets by using an update object.

The update object actually encapsulates three TQuery components. Each of these query components perform a single update task. One query component provides an SQL UPDATE statement for modifying existing records; a second query component provides an INSERT statement to add new records to a table; and a third component provides a DELETE statement to remove records from a table.
Espero que entiendas, te explico, por ejemplo si tienes un DBgrid, y actualizas uno o varios de sus campos, lo unico que tendras que hacer para guardar o cancelar los campos sera:

Código Delphi [-]
 Query1.ApplyUpdates;
 Query1.CommitUpdates;

por que el UpdateSQL gracias al cached update del Query, el UpdateSQL actualiza la DB.

salu2.

lucasarts_18 11-04-2005 04:58:31

Hola Nuevamente:

Ahora te entendí y hice el ejemplo que tú me propones, pero al momento de guardar los cambios con applyUpdates y Commit Updates me manda una excepción de "No SQl Statement Available.

Espero nuevamente tú ayuda.

Saludos
Aaron.

MasterXP 11-04-2005 06:58:39

Y ya le asignaste, la sentencia SQL al UpdatSQL?

has dobleclick en el UpdateSQL, y llevate del Wizard, en hara todo.

salu2.

lucasarts_18 12-04-2005 17:07:12

Hola:

Ahora me resulta, gracias por todo MasterXP

Saludos.
Aarón.

Puberta 09-11-2007 02:24:22

Hola,

yo tengo un DBGrid el cual lleno con una consulta en tiempo de ejecución (pues cambia dependiendo de algunos parámetros)...ya inserte un TUpdateSQL e hice lo que explicaron anteriormente pero no sé si esto implique que pueda escribir automaticamente cobre el DBGrid y si es así....como es que me le indico que me actualice un registro que tengo seleccionado el el DBGrid.

Ojalá me pueda alguien explicar...de una vez gracias.


Es más que obvio que no tengo experiencia y que no conozco Delphi.....pero algún día lo haré.


La franja horaria es GMT +2. Ahora son las 02:58:24.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi