M@tos 0 Denunciar post Postado Agosto 8, 2012 Tenho que criar uma function que verifique o status de uma atividade do fluxo, para cada status haverá um select que retorne um status id para uma variável. Esta varíavel deverá ser utilizada para um update. Eu utilizo o Oracle SQL DEveloper...e ao executar a function a mesma realiza o update com sucesso, porém ao chamar a function em um select como este: SELECT F_PROPOSTA('A') FROM DUAL; O mesmo acusa o seguinte erro dado pelo Oracle: ORA-14551: cannot perform a DML operation inside a query ORA-06512: at "FUNCTION", line 15 14551. 00000 - "cannot perform a DML operation inside a query " *Cause: DML operation like insert, update, delete or select-for-update cannot be performed inside a query or under a PDML slave. *Action: Ensure that the offending DML operation is not performed or use an autonomous transaction to perform the DML operation within the query or PDML slave. Eu preciso que esses comando sejam executados ao ser chamado em um select. É possível? Desde já agradeço Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 8, 2012 FUNCTIONs que fazem update (DML) NÂO podem ser chamadas via SELECT. Chame por uma PROCEDURE ou por um bloco PLSQL. Compartilhar este post Link para o post Compartilhar em outros sites
M@tos 0 Denunciar post Postado Agosto 14, 2012 ok. Obrigada. Compartilhar este post Link para o post Compartilhar em outros sites