Erro ao criar uma Trigger através do Delphi

Delphi

28/11/2012

Boa tarde a todos!

Estou tentando criar a seguinte trigger no banco, usando o delphi:

 Qry_Exec.Close; 
 Qry_Exec.Sql.Text := 'CREATE TRIGGER BALANCO_AI0 FOR BALANCO ACTIVE AFTER INSERT POSITION 0 AS declare variable codigo integer; begin select 0 from RDB$Database into :codigo end'; 
 Qry_Exec.ExecSQL(); 


Na execução, me retorna o seguinte erro:
Project Exemplo.exe raised exception class EUIBError with message 'Dynamic SQL Error
SQL error code = -104
Token unknown - line 1, column 143
?
Invalid token
Error Code: 249'.


Não esta reconhecendo o :CODIGO que é uma variável.
Uso:
Delphi 2006;
Firebird 2.0;
Drive UIB.
Obs. Qry_Exec é um TSqlQuery.

[]´s
Junior Miranda

Junior Miranda

Curtidas 0

Respostas

Deivison Melo

Deivison Melo

28/11/2012

Você está usando os componentes IBX?

Já tentou utilizar os componentes especificos do IBX para tratar informações referentes a ddl ?

GOSTEI 0
Deivison Melo

Deivison Melo

28/11/2012

Se pegar o mesmo comando vc consegue criar a trigger no firebird/interbase?

GOSTEI 0
Junior Miranda

Junior Miranda

28/11/2012

Olá Deivison.

- Utilizo os componentes DBX;
- Sim! O Script roda normalmente, se executado no IBExpert, por exemplo.

A questão toda está no seguinte ponto: "INTO :CODIGO"
Não está reconhecendo o ":CODIGO"

[]´s
GOSTEI 0
Junior Miranda

Junior Miranda

28/11/2012

Resolvido!!

Conforme sugestão de um colega em outra lista, neste caso, passei a usar o método
ExecuteDirect() do TSqlConnection. Obrigado!

[]´s
GOSTEI 0
Deivison Melo

Deivison Melo

28/11/2012

Posta todo código pois assim servirá como pesquisa para as pessoas que necessitarem de algo dessa natureza!!
GOSTEI 0
POSTAR