Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Generación de TRIGGERS desde DELPHI (https://www.clubdelphi.com/foros/showthread.php?t=18763)

jcpll 22-02-2005 17:43:04

Generación de TRIGGERS desde DELPHI
 
Tengo una aplicación encargada de ponerse en contacto con una base de datos Oracle 8i y crear una serie de TRIGGERS.

Estoy empleando el componente TADOCOMMAND y la verdad es que funciona todo excepto en casos en los que aparecen el simbolo ':' como es el caso del siguiente comando

CREATE OR REPLACE TRIGGER "EJEM"."NAMETRIGGER" BEFORE
DELETE
ON "EJEM"."NAME_TABLE"
FOR EACH ROW BEGIN
ELIMINARDOCUMENTOGASTO(:OLD.DATO);
END;

Tal como yo veo el problema es que considera :OLD como parametro cuando es texto puro y duro. Obviamente si ejecuto esa consulta desde el TOAD u otro programa similar funciona. He probado modificando las propiedades PARAMCHECK y PREPARED que tiene el TADOCOMMAND y sin embargo sigue fallando.

Tambien he probado a sustituir : por :: y tampoco funciona, lo curioso del tema es que si quito : el trigger es creado aunque logicamente me da un error al compilarlo ya que no sabe lo que es :OLD.DATO

Gracias y un saludo

lucianojdg 23-02-2005 12:32:42

No estoy seguro de que esto funcione, ya que no tengo Oracle para probarlo, pero podrias probar cambiar los terminadores.

SET TERM ^ :

CREATE OR REPLACE TRIGGER "EJEM"."NAMETRIGGER" BEFORE
DELETE
ON "EJEM"."NAME_TABLE"
FOR EACH ROW BEGIN
ELIMINARDOCUMENTOGASTO(^OLD.DATO);
END;

SET TERM : ^


espero te sirva


Saludos

lucianojdg 23-02-2005 12:38:10

Perdon, me doy cuenta que estamos en la misma... no va a funcionar porque de todas maneras, para cambiar los terminadores hay que hacer referencia a los dos puntos... :)

Lo unico que se me ocurre es que te consigas algun componenete en el que se puedan ejecutar scripts. Algo similar al IBScript que viene para Interbase pero para ADO...



Saludos


La franja horaria es GMT +2. Ahora son las 00:55:07.

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