Array
(
)

Como executar script de storad procedure dentro do delphi

Cristianojedi
   - 19 dez 2005

Pessoal,

Tenho um problemaço aqui.
Eu tenho o seguinte script:

#Código

SET TERM !! ;
CREATE PROCEDURE ACERTA_MATRICULA
AS
declare variable codigo integer;
BEGIN
FOR select * from vusutot2 into :codigo do
BEGIN
update usuario set matricula =matricula || ´-´ || cast(codigo as varchar(6))
where codigo =:codigo;
END
END
SET TERM ; !!


Como que eu faço para executar este script via codigo no delphi?
Já tentei de n maneiras e não consegui. Coloquei dinamicamente em um SQLQuery e não resolveu!!!

Se alguém puder me ajudar, agradeço!!!

Estou usando Interbase, Delphi com DBExpress.

Cristiano Mário


Cristianojedi
   - 19 dez 2005

Será que alguém pode me ajudar com isso?

Cristiano Mário


Cristianojedi
   - 19 dez 2005

Massuda, Rjun, Michael, Martins... todo mundo... Ajudem-me!!!

Cristiano Mário


Adriano Santos
   - 19 dez 2005


Citação:
Massuda, Rjun, Michael, Martins... todo mundo... Ajudem-me!!!

Cristiano Mário


Você precisa executar o procedimento ExecProc do componente TSQLStoredProc. Coloque um no form e preencha a propriedade SQLConnection e SQLProcName.


Cristianojedi
   - 19 dez 2005


Citação:
Você precisa executar o procedimento ExecProc do componente TSQLStoredProc. Coloque um no form e preencha a propriedade SQLConnection e SQLProcName.


Colega Adriano,

Não posso usar o componete TSQLStoredProc, pois esta procedure vai ser criada temporariamente. Por isso, tenho que ter o controle dela no código e não no componente TSQLStoredProc. Esta sua sugestão não resolveria meu problema.

Alguém mais pode me ajudar?

Cristiano Mário


Fx|hand
   - 19 dez 2005

No query vc pode colocar assim...

no mysql por exemplo é ´Call Nome_Procedure(Valores);´

mais no interbase/firebird eu num tenhu certeza... mais vi uma feiz e parecia q funcionava... tenta assim...

#Código

Sql.add(´Execute Procedure Nome_Procedure(Valores)´);



Gandalf.nho
   - 19 dez 2005

Pelo que entendi ele quer criar a SP no banco e não executá-la. Se vc estivesse usando o IBX, poderia usar o componente IBScript, mas no caso do DBExpress, vc pode executar seu script usando o utilitário de linha de comando do IB/FB (isql)