Re: RES: [firebase-br] Retorno em uma procedure de inserção
jader ricardo
jader_ricarddo em yahoo.com.br
Seg Nov 22 11:06:46 -03 2004
Olá,
Existe dois tipos de procedures as procedures executáveis(que faz determinda ação no banco) e as de seleção(que retorna determinado parâmetro).
O que eu queria era executar uma procedure para inserir um cliente, dentro desta procedure tem uma generator sendo jogada em uma variável, eu queria inserir esta variável na tabela e ao mesmo tempo retornar este valor.
Exemplo:
O valor da generator é 10, gostaria de inserir 10 no campo código e a procedure me retornaria este valor 10.
Atenciosamente,
Jader Ricardo
Rubem Rocha <rrocha em fpf.br> wrote:
E o que vc quer que retorne, companheiro? Stored procedures não são funções para retornar valores! Seja mais claro!
[]s
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em nome de jader ricardo
Enviada em: segunda-feira, 22 de novembro de 2004 08:34
Para: lista em firebase.com.br
Assunto: [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
---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.797 / Virus Database: 541 - Release Date: 15/11/2004
______________________________________________
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
---------------------------------
Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador agora!
Mais detalhes sobre a lista de discussão lista