Re{2}: [firebase-br] Retorno em uma procedure de inserção
RedDevil
reddevil em reddevil.eti.br
Seg Nov 22 11:16:08 -03 2004
ola Jader.
tudo bem contigo?
sincerely, espero que sim.
mais uma coisa...
;o)
se voce quiser que retorne o CODIGO, use o teu primeiro exemplo, mas sem declarar o CODIGO como variavel... algo tipow assim:
CREATE PROCEDURE SP_CLIENTES_INSERIR (NOME VARCHAR(50))
RETURNS (CODIGO VARCHAR(10))
AS
BEGIN
CODIGO = GEN_ID(GEN_CODCLIENTES,1);
INSERT INTO CLIENTES (CODCLIENTES,NOMECLIENTES) VALUES (:CODIGO,:NOME);
SUSPEND;
EXIT; /* ate acho que este EXIT eh desnecessario ...;o) */
END
[]s
força sempre.
ate +++
Luiz "RedDevil" Stefanski
=======><=========
====> Delphi 4 <=====
====> powered <=====
======> by <=======
===> IBObjects <=====
=======><=========
more in:
http://www.RedDevil.eti.br (home)
http://www.firebase.com.br/cgi-bin/firebase.cgi/artigo?ID=630 (instalaçao)
http://www.firebase.com.br/cgi-bin/firebase.cgi/dnld?ID=165 ("tips")
----- Original Message -----
From: "jader ricardo" <jader_ricarddo em yahoo.com.br>
To: <lista em firebase.com.br>
Sent: Monday, November 22, 2004 10:33 AM
Subject: [firebase-br] Retorno em uma procedure de inserção
> Bom dia a todos !
>
> Estou com um pequeno problema em uma procedure vejam os dados:
>
> /* TABELA CLIENTES */
> CREATE TABLE CLIENTES
> (
> CODCLIENTES VARCHAR(10) NOT NULL PRIMARY KEY,
> NOMECLIENTES VARCHAR(50)
> )
>
> /* PROCEDURE */
>
> SET TERM!!
> CREATE PROCEDURE SP_CLIENTES_INSERIR (NOME VARCHAR(50))
> RETURNS (CODIGO VARCHAR(10))
> AS
> DECLARE VARIABLE CODIGO VARCHAR(10);
> BEGIN
> CODIGO = GEN_ID(GEN_CODCLIENTES,1);
> INSERT INTO CLIENTES (CODCLIENTES,NOMECLIENTES) VALUES (:CODIGO,:NOME);
> EXIT;
> END!!
>
>
> Aqui aparece o seguinte erro : "Dynamic SQL Error SQL error code = -901 variable CODIGO conflicts with parameter in same procedure"
>
> Então eu tentei :
>
> /* PROCEDURE */
> SET TERM!!
> CREATE PROCEDURE SP_CLIENTES_INSERIR (NOME VARCHAR(50))
> RETURNS (CODCLIENTES VARCHAR(10))
> AS
> DECLARE VARIABLE CODIGO VARCHAR(10);
> BEGIN
> CODIGO = GEN_ID(GEN_CODCLIENTES,1);
> INSERT INTO CLIENTES (CODCLIENTES,NOMECLIENTES) VALUES (:CODIGO,:NOME);
> EXIT;
> END!!
>
> Aqui não é retornado nada ...
>
> Gostaria se possível de uma ajuda de vcs,
> Desde já agradeço a atenção ....
>
>
> ---------------------------------
> Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador agora!
> ______________________________________________
> 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
Mais detalhes sobre a lista de discussão lista