Cursor em mysql
Eae galera, fiz uma prova em oracle, e agora como trabalho tenho que fazer o mesmo mas em mysql, as triggers e procedures eu consegui fazer de boa, mas o cursor eu não consegui.
O enunciado é esse:
Faça um bloco PL/SQL que mostre as seguintes informações
Em oracle fica assim:
Alguém pode me ajudar em como passar isso pra mysql?
O enunciado é esse:
Faça um bloco PL/SQL que mostre as seguintes informações
CodFuncionario: 1
Nome: José da Silva
Competência: 082013
Salário Base: 9999,99
Salário Bruto: 9999,99
Proventos
Hora Extra – 9999,99
Abono – 9999,99
Descontos
Adiantamento – 9999,99
INSS – 9999,99
IR – 9999,99
CodFuncionario: 2
Nome: Marisa Rodrigues
Competência: 082013
Salário Base: 9999,99
Salário Bruto: 9999,99
Proventos
Hora Extra – 9999,99
Abono – 9999,99
Descontos
Adiantamento – 9999,99
INSS – 9999,99
IR – 9999,99
Em oracle fica assim:
set serveroutput on
DECLARE
CURSOR cursorHolerite IS
select f.codfuncionario, f.nome, f.salariobase, l.competencia, h.salariobruto,
tl.tipo, tl.descricao, l.valor
from funcionario f, lancamento l, tipolancamento tl, holerite h
where f.codfuncionario = l.codfuncionario and
l.codfuncionario = h.codfuncionario and
l.competencia = h.competencia and
l.idtipolancamento = tl.idtipolancamento
order by f.nome, l.competencia, tl.tipo, tl.descricao;
vCodFuncionario funcionario.codfuncionario%type;
vCompetencia holerite.competencia%type;
BEGIN
vCodFuncionario := 0;
vCompetencia := 0;
FOR vHolerite IN cursorHolerite LOOP
IF (vCodFuncionario <> vHolerite.CodFuncionario) OR
(vCompetencia <> vHolerite.Competencia) THEN
dbms_output.put_line('');
dbms_output.put_line('');
dbms_output.put_line('Código Funcionário: ' || vHolerite.CodFuncionario);
dbms_output.put_line('Nome: ' || vHolerite.Nome);
dbms_output.put_line('Competência: ' || vHolerite.Competencia);
dbms_output.put_line('Salário Base: ' || vHolerite.SalarioBase);
dbms_output.put_line('Salário Bruto: ' || vHolerite.SalarioBruto);
vCodFuncionario := vHolerite.CodFuncionario;
vCompetencia := vHolerite.Competencia;
END IF;
dbms_output.put_line(vHolerite.Descricao || '('
|| vHolerite.Tipo || '): ' || vHolerite.Valor);
END LOOP;
END;
Alguém pode me ajudar em como passar isso pra mysql?
Eder Cuer
Curtidas 0
Respostas
Alessandro Yamasaki
15/10/2013
Veja se este link te ajuda em alguma informação
http://dev.mysql.com/doc/refman/5.0/en/cursors.html
http://dev.mysql.com/doc/refman/5.0/en/cursors.html
GOSTEI 0