TRIGGER ao inserir um registro

DBA Geral (instalação, configuração do banco, scripts do Sql*Plus, shell scripts, batch scripts, etc...)
Responder
claudioramone01
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 2
Registrado em: Ter, 19 Ago 2014 9:41 am

Fala galera,
Estou tendo problemas com a construção de uma trigger pois não manjo nada.
Qual que é a ideia...
Tabela A eu tenho os registros
1.1
1.2
1.3
Na tabela B eu tenho os registros
A.1
A.2
A.3
A.4
Eu preciso ao inserir na Tabela C por exemplo o registro 1.1 da tabela A e pegando o registro A.1 da tabela B
que ele faça uma varredura na tabela B e insira os outros registros que não foram inseridos para o 1.1 ou seja
A.2
A.3
A.4
e copiando o restante dos campos iguais ao do registro A.1

alguém pode me ajudar?
claudioramone01
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 2
Registrado em: Ter, 19 Ago 2014 9:41 am

[quote="claudioramone01"]Fala galera,
Estou tendo problemas com a construção de uma trigger pois não manjo nada.
Qual que é a ideia...
Tabela A eu tenho os registros
1.1
1.2
1.3
Na tabela B eu tenho os registros
A.1
A.2
A.3
A.4
Eu preciso ao inserir na Tabela C por exemplo o registro 1.1 da tabela A e pegando o registro A.1 da tabela B
que ele faça uma varredura na tabela B e insira os outros registros que não foram inseridos para o 1.1 ou seja
A.2
A.3
A.4
e copiando o restante dos campos iguais ao do registro A.1

--
A ideia real é :
Eu tenho uma conta nova e tenho varios centro de custos...
Ao executar um processo eu seleciono apenas um centro de custo para essa conta e a trigger insere todos os centro de custos para esta conta que não estao vinculadas a ela.

alguém pode me ajudar?
DanielNN
Moderador
Moderador
Mensagens: 641
Registrado em: Seg, 03 Set 2007 3:26 pm
Localização: Fortaleza - CE
att,

Daniel N.N.

Pelo que entendi tu queres inserir todos centros de custos possíveis para determinada conta para permitir lançamentos a ela. Tecnicamente é simples. Minha dúvida é se para o negócio não irá criar duplas (contas / ccusto)) inválidos que deverão ser tratado posteriormente.

Mas basicamente seria:

Selecionar tudo

Insert into Table c ( conta , ccusto)
select :param_conta
       , tc.ccusto
  from table_ccusto tc
 where tc.ccusto <> :param_ccusto
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 5 visitantes