Hi,
for me it worked with this hack:
ZDBcOracleStatement.pas:
Code: Select all
[...]
procedure TZOraclePreparedStatement.Prepare;
var
I: Integer;
Status: Integer;
TypeCode: ub2;
CurrentVar: PZSQLVar;
begin
if not Prepared then
begin
{ Allocates statement handles. }
if (FHandle = nil) or (FErrorHandle = nil) then
begin
AllocateOracleStatementHandles(FPlainDriver, Connection,
FHandle, FErrorHandle);
end;
// new Line ->
OracleSQL:=trim(OracleSQL);
//<- new Line
[...]
With that change i could generate my trigger.
But i had to put a second ';' after the last 'end;' of my Trigger-Code.
For Example:
Code: Select all
CREATE TRIGGER TRIPORTOK_INSERT_AZON BEFORE
INSERT ON TRIPORTOK FOR EACH ROW DECLARE
BEGIN
EXECUTE IMMEDIATE 'SELECT TRIPORTOK_FAZONOSITO_SEQ.NEXTVAL FROM DUAL' INTO :NEW.FAZONOSITO;
END;;
No idea where one of the ';' got lost!?
Rainer