Pular para o conteúdo
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #80052
    Anônimo

      Tenho uma tabela que ao inserir dados ela precisa disparar uma trigger para coletar os dados dela e de outra tabela (ambas estão relacionadas por uma ID) e inserir em outra tabela, quando eu tento fazer isso a trigger acusa que a tabela é mutante e dá erro. Alguém pode dar uma força?
      Olha o código da minha trigger:

      create or replace trigger insert_tabela_c
      after insert on tabela_b
      for each row
      declare
      data date;
      peso number(10,4);
      precisao varchar(1);
      maquina number(6);
      produto number(5);
      begin
      select cod_aca, cod_maquina
      into produto,
      maquina
      from tabela_a
      where amo_codigo = :new.amo_codigo;

      select ame.ame_data, ame.ame_peso, ame.ame_precisao
      into data,
      peso,
      precisao
      from tabela_b ame
      where amo_codigo = :new.amo_codigo;

      insert into tabela_c(data_med, peso, precisao, cod_maquina, cod_aca)
      values(data, peso, precisao, maquina, produto);

      end insert_tabela_c;

      #80055
      DanielB
      Participante

        por que accedes a la tabla b si los campos ya los tienes en la variables :new ????

        #80056
        Anônimo

          Vlw pela força, eu devia ter tomado pinga quando fiz isso. 😆
          Olha aí a solução final, agora tá rolando:

          create or replace trigger insert_medicoes
          after insert on amostragem_medicao
          for each row
          declare
          maquina number(6);
          produto number(5);
          begin
          select cod_aca, cod_maquina
          into produto,
          maquina
          from amostragem
          where amo_codigo = :new.amo_codigo;

          insert into medicoes2(data_med, peso, precisao, cod_maquina, cod_aca)
          values(:new.ame_data, :new.ame_peso, :new.ame_precisao, maquina, produto);
          end insert_medicoes;

        Visualizando 3 posts - 1 até 3 (de 3 do total)
        • Você deve fazer login para responder a este tópico.
        plugins premium WordPress