![]() |
Sobre el mensaje de error "during execution of trigger"
Porque este triger no funciona. Hay errores.
Este es el error.
|
Existe muchisima documentación sobre las tablas mutantes, en el portal de desarrolladores de oracle encontrarás información al respecto.
Sobre tu triger. La lógica es errónea, no puedes crear un triguer que se ejecute cuando una tabla se actualiza a si misma. Si analizas un poco lo que provoca tu triger te darás cuenta que es erroneo: al modificar una fila en TB_PC_PRODUTO se actualiza la tabla TB_PC_PRODUTO estableciendo VALOR = 5.98 como se modificó la tabla TB_PC_PRODUTO vuelve a ejecutarse el triger y así sucesivamente en un ciclo infinito. Saludos. |
Ola, pero yo hizo asi y viene el mismo error. Esta fue otra tentativa da hacer para ver si funciona o no. Abajo como estas ahora.
|
:P el problema tiene que ver con la mutación de las tablas,
Mientras estás realizando operaciones en una transacción que involucra ambas tablas (un bloque de código en un SP), se ejecuta el trigger, como la transacción no ha sido confirmada oracle considera que la tabla está mutando. Ello genera el error. Analiza bien la lógica de la operación que realizas, probablemente no sea necesario un trigger. y puedas realizar la operación en el mismo bloque. Saludos |
Esto es un aprendizado. Yo apender a escribir trigger. Se que puedo hacer de otra forma, pero mi gustaria de hacer con trigers, pues no lo conozco bien la PL/SQL y quiero aprender. Solo esto.
|
Cita:
El triguer está bien. lo que no es correcto es la lógica que implementas. :D, suerte y aca andamos para ayudarte |
| La franja horaria es GMT +2. Ahora son las 09:50:51. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi