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