Eduardo

Sugestão: também pode fazer um INSERT ... SELECT direto (sem cursor
explícito).

[ ]

André


Em 2 de dezembro de 2014 17:30, Marlon Pasquali - TI - Peccin S.A.
marlon.pasqu...@peccin.com.br [oracle_br] <oracle_br@yahoogrupos.com.br>
escreveu:

>
>
>  Sim,
>
> Sempre que você for ler um cursor, você vai usar o seu index.
>
>
>
>
>
> *Syntax*
>
> The syntax for the *CURSOR FOR LOOP* in Oracle/PLSQL is:
>
> FOR record_index in *cursor_name*
>
> LOOP
>
>    {...statements...}
>
> END LOOP;
>
> *Parameters or Arguments*
>
> *record_index* is the index of the record.
>
> *cursor_name* is the name of the cursor that you wish to fetch records
> from.
>
> *statements* are the statements of code to execute each pass through the
> CURSOR FOR LOOP.
>
>
>
> Att
>
> Marlon
>
>
>
>
>
>
>
> *De:* oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br]
> *Enviada em:* terça-feira, 2 de dezembro de 2014 17:21
> *Para:* oracle_br@yahoogrupos.com.br
> *Assunto:* Re: [oracle_br] Re: Ajuda com trigger para incluir permissão
>
>
>
>
>
> Compilou aqui , mas esse rec são os dados que o cursor referencia ?
>
>
>
> Em 2 de dezembro de 2014 16:44, Marlon Pasquali - TI - Peccin S.A.
> marlon.pasqu...@peccin.com.br [oracle_br] <oracle_br@yahoogrupos.com.br>
> escreveu:
>
>
>
> Voce tem que colocar
>
>
>
>      VALUES(    rec.matricula,         3,     ' ', :new.codfornec,
>   1, SYSDATE);
>
>
>
>
>
> *De:* oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br]
> *Enviada em:* terça-feira, 2 de dezembro de 2014 16:43
> *Para:* oracle_br@yahoogrupos.com.br
> *Assunto:* [oracle_br] Re: Ajuda com trigger para incluir permissão
>
>
>
>
>
> Pesquisando o erro consertei essa linha:
>
>
>
>  VALUES(   empregados.matricula,         3,     ' ', :new.codfornec,
>     1, SYSDATE);
>
>
>
> Agora só ficou o erro :
>
>
>
>  PL/SQL: ORA-00984: column not allowed here
>
>
>
>
>
>
>
> Em 2 de dezembro de 2014 16:15, Eduardo Perdomo <panc...@gmail.com>
> escreveu:
>
> Boa tarde.
>
>
>
> Preciso criar uma trigger que ao cadastrar um novo fornecedor
> automaticamente inclua permissão de acesso.
>
> Tenho a tabela fornecedores, empregados e liberação.
>
> Preciso , que ao cadastrar um novo fornecedor, varrer todo o cadastro de
> empregados e incluir a permissão na tabela liberação para todos os
> empregados.
>
>
>
> Segue abaixo o que estou tentando:
>
>
>
>
>
> CREATE OR REPLACE TRIGGER insere_131
>
>  BEFORE
>
>   INSERT
>
>  ON fornecedores
>
> REFERENCING NEW AS NEW OLD AS OLD
>
>  FOR EACH ROW
>
> DECLARE
>
> cursor c_t is select matricula from empregados ;
>
>
>
> BEGIN
>
>
>
>  for rec in c_t loop
>
>     INSERT INTO liberacao(CODFUNC, CODTABELA, CODIGOA,        CODIGON,
> CODFUNC_LIB, DATA_LIB)
>
>      VALUES(    c_t.matricula,         3,     ' ', :new.codfornec,
>   1, SYSDATE);
>
>   end loop;
>
> END insere_131;
>
>
>
>
>
> Os erros:
>
> PLS-00225
>
> ORA-00984
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> Eduardo Perdomo
>
> Consultor de Implantação
>
> Grupo PC Sistemas - www.grupopc.com.br
>
> (21) 6845-8592
>
> panc...@gmail.com
>
> eduardo.perd...@pcinformatica.com.br
>
> Blog: eduardo.perdomo.nom.br
>
>
>
>
>
> --
>
>
>
> Eduardo Perdomo
>
> Consultor de Implantação
>
> Grupo PC Sistemas - www.grupopc.com.br
>
> (21) 6845-8592
>
> panc...@gmail.com
>
> eduardo.perd...@pcinformatica.com.br
>
> Blog: eduardo.perdomo.nom.br
>
>
>
>
>
> --
>
>
>
> Eduardo Perdomo
>
> Consultor de Implantação
>
> Grupo PC Sistemas - www.grupopc.com.br
>
> (21) 6845-8592
>
> panc...@gmail.com
>
> eduardo.perd...@pcinformatica.com.br
>
> Blog: eduardo.perdomo.nom.br
>
>    
>
  • ... Eduardo Perdomo panc...@gmail.com [oracle_br]
    • ... Eduardo Perdomo panc...@gmail.com [oracle_br]
      • ... Marlon Pasquali - TI - Peccin S.A. marlon.pasqu...@peccin.com.br [oracle_br]
        • ... Eduardo Perdomo panc...@gmail.com [oracle_br]
          • ... Marlon Pasquali - TI - Peccin S.A. marlon.pasqu...@peccin.com.br [oracle_br]
            • ... Andre Santos andre.psantos...@gmail.com [oracle_br]

Responder a