[firebase-br] Stored procedures
    Junior 
    junior em fiorilli.com.br
       
    Sex Abr  7 11:53:42 -03 2006
    
    
  
faltou o SUSPEND;
[]'s
Alirio Botelho Junior
--------------------------------------------------
Fiorilli S/C Ltda Software
(17) 3264-9000
email: junior em fiorilli.com.br
---------------------------------------------------
----- Original Message ----- 
From: "Edson Marco Ferrari Junior" <edmafer em gmail.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, April 07, 2006 10:35 AM
Subject: [firebase-br] Stored procedures
Estou tentando criar algumas procedures que primeiro verifique se
existo o registro na tabela, e se existir ela me retorna o id, caso
contrário, ela faz a inserção, e me retorna o id.
O problema, é que ela fazendo ou não a inserção (a inserção funciona)
ela sempre me retorna "null".
A procedure:
create procedure sp_save_cliente(va_cli_nome varchar(25))
returns(
    vcli_id integer
)
as
begin
    /*
     * Preciso do id do cliente, caso ele não
     * esteja cadastrado, vou cadastrá-lo.
     */
    vcli_id = null;
    select cli_id
    from cliente
    where cli_nome = :va_cli_nome
    into
        :vcli_id;
    if (vcli_id is null) then
    begin
        insert into cliente
        values
        (
            0,
            0,
            :va_cli_nome
        );
        select max(cli_id)
        from cliente
        into
            :vcli_id;
    end
end;
E a chamo da seguinte forma:
select vcli_id from sp_save_cliente ('NOME DO CLIENTE');
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.385 / Virus Database: 268.3.5/302 - Release Date: 05/04/2006
    
    
Mais detalhes sobre a lista de discussão lista