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
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 ;