Cursor no MariaDB

Forum sobre SQL.

Moderador: Moderadores

Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Cursor no MariaDB

Mensagem por asimoes »

Eu estava querendo retornar um cursor em uma SP no MariaDb, querendo fazer igual ao Oracle, pqp é muito simples:

Código: Selecionar todos

DELIMITER $$
 
CREATE OR REPLACE PROCEDURE Busca()
BEGIN

DECLARE CONTINUE HANDLER FOR SQLSTATE '23000' SET @x2 = 1;

 SELECT 
    * 
 FROM 
    asaprev.CADASTROSOCIOS CAD
 WHERE
   CAD.D_DESLIG IS NULL AND
	CAD.D_FALECI IS NULL AND
	SUBSTRING(CAD.CLASSE_PG,1,2) IN ('01', '02', '03', '04', '05');
END $$

DELIMITER ;
Ou, passando parâmetro

Código: Selecionar todos

DELIMITER $$
 
CREATE OR REPLACE PROCEDURE Busca(IN p_sCodigo VARCHAR(5), INOUT p_sErro VARCHAR(4000))
BEGIN
   DECLARE CONTINUE HANDLER FOR SQLSTATE '23000' SET @x2 = 1;
   SET p_sErro = '';
   SELECT 
      * 
   FROM 
      CADASTROSOCIOS CAD 
   WHERE 
      CAD.CODIGO = p_sCodigo;
END $$

DELIMITER ;
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Responder