[firebase-br] RES: Ajuda com procedure

Moacir moacir em blusistemas.com.br
Qui Nov 5 15:22:19 -03 2009


Boa Tarde, se voce ler os tópicos de ontem, foi respondido esta sua divida
um pouquinho diferente mas resolve pra você também, mas já adianto so
conseguimos fazer na versão 2.1 pra cima.

CREATE PROCEDURE NUMERA_TESTE
CG> returns (resultado integer)
CG> as
CG> declare variable vsql varchar(10000); declare variable gera 
CG> varchar(100); begin
CG>   -- Assim Funciona
CG>   --select Gen_Id(NomeDoGenerator,1) from rdb$DataBase into :Resultado;
CG>   --suspend;

CG>   --concatenando assim nao funciona
CG>   Gera = 'NomeDoGenerator';

CG>   vSQL = 'select gen_id('||:Gera||',1) from rdb$database ';
CG>   Execute statement :vSQL into :Resultado;
CG>   suspend;
CG> end

A diferença aqui que a variável gera você recebera como parâmetro.

Saudacoes.

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Herminio E. Piram
Enviada em: quinta-feira, 5 de novembro de 2009 14:55
Para: FireBird
Assunto: [firebase-br] Ajuda com procedure

Olá pessoa.

Ha 3 semanas fiz um post off para pedir ajudar de como usar uma
procedure no delphi,
so agora tive tempo de voltar a pesquisar sobre.
Agradeço a todos os que me ajudaram naquele post!

Mas agora venho com uma duvida no firebird, criei a seguinte procedure:

CREATE OR ALTER PROCEDURE STP_GETGENERATORVALUE(nmGenerator
varchar(50)) returns (generatorValue integer) as
begin
    generatorValue = gen_id(nmGenerator,1);
end;

Mas nao estou conseguindo passar o parametro nmGenerator para o
gen_id, tenho a seguinte msg de erro:

Invalid token.
invalid request BLR at offset 54.
generator NMGENERATOR is not defined.

O que quero fazer é possivel?

Gostaria de usar uma procedure para este trabalho pois acho mais
pratico e elegante.

-- 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _

"If the doors of perception were cleansed everything
 would appear to man as it is, infinite." (William Blake)
 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista