Pular para o conteúdo
  • Este tópico contém 2 respostas, 3 vozes e foi atualizado pela última vez 15 anos atrás por fsitja.
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #98496
    Anônimo

      Ola pessoal,
      é posivel utilizar na cláusula matched do comando merge
      outros comandos alem do insert ou update.
      Ex:

      when matched then
      update …
      wrk_cont := wrk_cont +1
      select a
      into b from tabela

      #98497
      Avatar photoLeonardo Litz
      Participante

        Ola morgadolmr

        Segundo a documentacao o Merge so eh possivel para comandos DML (Insert, Update ou Delete).
        Veja a documentacao:

        http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/statements_9016.htm#SQLRF01606

        Estou sem base de dados aqui, mas tente fazer um teste sustituindo o DELETE ou UPDATE por um EXECUTE IMMEDIATE. Depois poste o resultado para gente!

        Valeu Leonardo Litz

        #98508
        fsitja
        Participante

          O Merge é um comando SQL, portanto não aceita PL/SQL dentro dele.

          Em outras palavras, o merge é um comando declarativo, e não procedural.

          A exceção seria para o caso de dentro dele ser chamada alguma function. Entretanto, vale a regra de que function dentro de SQL não se pode fazer DML (manipulação de dados).

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