[firebase-br] Store procedure

John Kennedy johnbh3 em gmail.com
Qua Nov 2 09:49:53 -03 2005


Chegado, estou fazendo um exemplo pre supondo que tabela de telefones
existe vinculo com a tabela de aluno.

Alguma explicações.
Observe o Inicio do código for select onde Aluno - e tabela de Aluno.
Abaixo no laço de comando Do. Select Telefone e a tabela de Telefone.
For Select (Tabela(Aluno)).(Campo_COD_Aluno),(Campo.Nom_Aluno) etc.
>From Tabela(Aluno)

Into:  Parametro de saida... dados que você quer obter.
 NUM_TELEFONE VARCHAR(10),  -- TELEFONE (TABELA DE TELEFONE)
 NOME_ALUNO VARCHAR (10),    -- NOME DO ALUNO (TABELA DE ALUNO)
 CODIGO VARCHAR (100),              -- CODIGO DO ALUNO (TABELA DE ALUNO)
 IDADE_ALUNO VARCHAR (30))   -- IDADE DO ALUNO (TABELA DE ALUNO)
Observe que joguei.. somente  Into :NOME_ALUNO, :CODIGO, :IDADE_ALUNO
porque refere-se a tabela de Aluno
Abaixo em
Do
Begin
Onde eu pego o telefone do Aluno.

   Select TELEFONE.TEL from TELEFONE
      Where TELEFONE.COD_ALUNO =:COD_ALUNO
      Into :NUM_TELEFONE;  -- Lembra-se acima eu passei esta variavel
(TELEFONE) como parametro de saida. agora eu estou pegando o tel.

Qualquer duvida....

Valeu.... parceiro.




CREATE PROCEDURE TESTE_TEL (
    COD_ALUNO VARCHAR (10),
RETURNS (
    NUM_TELEFONE VARCHAR(10),
    NOME_ALUNO VARCHAR (10),
    CODIGO VARCHAR (100),
    IDADE_ALUNO VARCHAR (30))
AS
BEGIN
  For Select ALUNO.COD_ALUNO, ALUNO.NOM_ALUNO, ALUNO.IDADE_ALUNO
      From ALUNO
      Where (ALUNO.COD_ALUNO =:COD_ALUNO)
      Into :NOME_ALUNO, :CODIGO, :IDADE_ALUNO
  Do
  Begin
      Select TELEFONE.TEL from TELEFONE
      Where TELEFONE.COD_ALUNO =:COD_ALUNO
      Into :NUM_TELEFONE;
   suspend;
  END
END

Em 31/10/05, Denis Rocha<denisrocha em hotmail.com> escreveu:
> Oi Pessoal,
>
> Estou querendo montar uma Store procedure. Mas estou me embananando todo.
> Nem sei se tem como fazer.
> É o seguinte. Preciso de dados de duas tabela ( alunos e telefones ).
>
> Como faço para que a procedure retorne os dados das duas tabelas ?
>
> O que quero é retornar os dados do aluno, e depois um telefone só do aluno
> ( podem ter vários ), é aí que está o problema. Pois a procedure vai
> retornar mais que uma linha e aí dá pau.
>
> Obrigado.
>
>
>
>
>
>
>
> ______________________________________________
> 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
>
>




Mais detalhes sobre a lista de discussão lista