Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

PauloTI

[Resolvido] Exercicio/Oracle/Date1

Recommended Posts

Vamos la.. preciso de uma procedure que faça um delete quando eu entrar com o numero do " MÊS "

 

segue abaixo o que eu conseguir fazer... mas ainda assim não ta dando certo.. eu não manjo muito de PROCEDURE com DELETE embutido. valeu abç!

 

CREATE OR REPLACE PROCEDURE TRD_DAAATA(V_NUM IN NUMBER) IS

BEGIN
 FOR I IN (SELECT
             DISTINCT   TO_CHAR(DATA_ADMISSAO,'MM') LOL
                 FROM EMPRE
                 WHERE DATA_ADMISSAO = TO_CHAR(V_NUM,'MM')
                 GROUP BY TO_CHAR(DATA_ADMISSAO,'MM')) LOOP


                 DELETE EMPRE
                 WHERE I.LOL = TO_CHAR(V_NUM,'MM');

END LOOP;
END;

Compartilhar este post


Link para o post
Compartilhar em outros sites

quase ...

 

CREATE OR REPLACE PROCEDURE TRD_DAAATA(P_MES IN NUMBER,P_QTD OUT NUMBER) IS

BEGIN
 DELETE EMPRE
 WHERE TO_NUMBER(TO_CHAR(DATA,'MM')) = P_MES;
 P_QTD := SQL%ROWCOUNT;
END;

 

chamando (sqlplus)

 

set serveroutput on;

 

declare
 vn_mes number;
 vn_qtd number;
begin
 TRD_DAAATA(vn_mes,vn_qtd);
 dbms_output_put_line(vn_qtd);
end;

 

obs : escrito no notepad, pode ter algum erro ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

quase ...

 

CREATE OR REPLACE PROCEDURE TRD_DAAATA(P_MES IN NUMBER,P_QTD OUT NUMBER) IS

BEGIN
 DELETE EMPRE
 WHERE TO_NUMBER(TO_CHAR(DATA,'MM')) = P_MES;
 P_QTD := SQL%ROWCOUNT;
END;

 

chamando (sqlplus)

 

set serveroutput on;

 

declare
 vn_mes number;
 vn_qtd number;
begin
 TRD_DAAATA(vn_mes,vn_qtd);
 dbms_output_put_line(vn_qtd);
end;

 

obs : escrito no notepad, pode ter algum erro ...

 

 

Não sei quem você é.... mas manja de mais KKKK valeu... não sabia q dava pra usar.. TO_NUMBER.. E TO_CHAR TODO JUNTO

 

VALEUUUUUU MOTTA \O

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na realidade não precisa pois a conversão é automática, mas como é caso didatico melhor colocar.

 

Em geral não respondo "deve de casa", mas você ao menos tentou.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.