PDA

Ver la Versión Completa : conexxion entre query y updatesql


Irina
02-06-2003, 11:31:18
Hola, el otro dia pregunte como modificar los datos de una cosulta, me lo exlicaron todo muy bien y crei haberlo entendido todo, pero hoy he empezado a trabajar con el UpdateSQL como me dijeron pero no encuentro la forma de enlazar el UpdateSQL con el Query del cual recojo los datos, tampoco como le puedo pasar los parametro que quiero modificar, ni como ejecutarlo.

Siento ser un poco pesada con este tema, pero me interesa mucho saber su funcionamiento porque me parece que es muy practico y util.

Un saludo y muchas gracias.

andres1569
02-06-2003, 15:19:33
Hola de nuevo:

El uso de los componentes TUpdateSQL viene explicado en la ayuda de Delphi. Básicamente debes asignar un componente de estos a la propiedad UpdateObject de un TDataSet (lo puedes asignar a un sólo Dataset, tabla o query, si luego lo asignas a otro verás que se borra dicha propiedad del anterior), y activar la propiedad CachedUpdates.

Luego haces doble click sobre el componente TUpdateSQL, te aparecerá un editor. Lo recomendable es pulsar el botón "Generate SQL" que genara las sentencias de Insert, Update y Delete correspondientes. Los parámetros que preguntabas vienen indicados mediante el nombre del campo precedido de dos puntos (:), de ahí toma los valores (los toma del Dataset al que está enlazado, por supuesto). Ten en cuenta que las sentencias Update y Delete utilizan parámetros del tipo OLD_ en la cláusula WHERE para referirse a los valores anteriores. Puedes modificar estas sentencias como desees, Delphi simplemente genera las sentencias generales, asignando todos los campos, quizás quieras retocar algo o incluso que no "toque" algún campo.

Cuando se llame al método ApplyUpdates de un Dataset, si tiene asociado un TUpdateSQL, se ejecutará el código de dichas sentencias, para cada registro se aplicará la sentencia correspondiente dependiendo de si ha sido insertado, modificado o borrado.

Bueno, espero haberme explicado.