Update Dinâmico em Procedure
Boas,
Gostaria de pedir um help na criação da seguinte procedure:
CREATE OR REPLACEProcedure INTEGRACAO.atualizaFlagSiga(empresa IN VARCHAR, tabela IN VARCHAR, id IN NUMBER)IS strSQL VARCHAR2(300); BEGIN strSQL:= ''; IF(tabela = 'funcionarios') THEN strSQL := 'UPDATE ' || empresa || '.' || tabela || ' SET imp_siga = 1 WHERE id_funcionario = ' || id; ELSIF(tabela = 'lancamento') THEN strSQL := 'UPDATE ' || empresa || '.' || tabela || ' SET imp_siga = 1 WHERE id_lancamento = ' || id; ELSIF(tabela = 'nota_fiscal') THEN strSQL := 'UPDATE ' || empresa || '.' || tabela || ' SET imp_siga = 1 WHERE id_nota_fiscal = ' || id; ELSIF(tabela = 'pessoa') THEN strSQL := 'UPDATE ' || empresa || '.' || tabela || ' SET imp_siga = 1 WHERE id_cliente = ' || id; ELSIF(tabela = 'empresa') THEN strSQL := 'UPDATE ' || empresa || '.' || tabela || ' SET imp_siga = 1 WHERE id_convenio = ' || id; END IF; DBMS_OUTPUT.PUT_LINE(strSQL); EXECUTE IMMEDIATE strSQL; END;A minha idéia nessa procedure é receber os parâmetro empresa(cada empresa no banco de dados possue um schema) e fazer um UPDATE no respectiva tabela.Como eu posso fazer, para ver a instrução SQL que ele está gerando. Eu acrescentei uma linha na procedure, a minha intenção é printar o conteúdo da variável strSQL
Discussão (1)
Carregando comentários...