Não funciona a minha PROCEDURE criada no phpMyAdmin
Por favor,
Tenho uma Procedure que facilitará muito a inserção da "data_ano_liturgico" e os respectivos "dias_semanas "
O resultado seria preencher o campo "data_ano_liturgico" iniciando em 2021-11-21 até 2022-12-31 com os respectivos dias da semana, como já informei.
Editando a procedure:
tem em:
Nome da rotina: adicionar_data
Tipo: PROCEDURE
Parâmetros : Direção: IN , Nome: data_inicio, Tipo: DATE
IN,, Nome: Intervalo, Tipo: INT
BEGIN
DECLARE var_data DATE;
DECLARE var_dia VARCHAR(50);
DECLARE contador INT DEFAULT 0;
SET var_data = data_inicial;
SET var_dia = DAYNAME(data_inicial);WHILE contador < intervalo DO
INSERT INTO tb_ano_liturgico(data_ano_liturgico, dias_semanas) VALUES
(var_data, var_dia);
SET contador = contador + 1;
SET var_data = DATE_ADD(data_inicial, INTERVAL contador DAY);
SET var_dia = DAYNAME(var_data);
END WHILE;END $$
DELIMITER ;
Call adicionar_datas(‘2021-11-21’, 399);
Qual o erro que apresenta:
>
Citar
Um ou mais erros ocorreram durante o processamento da sua requisição:
-
A seguinte consulta falhou: "CREATE DEFINER=`root`@`localhost` PROCEDURE `adicionar_data`(IN `data_inicial` DATE, IN `intervalo` INT) NOT DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER BEGIN DECLARE var_data DATE; DECLARE var_dia VARCHAR(50); DECLARE contador INT DEFAULT 0; SET var_data = data_inicial; SET var_dia = DAYNAME(data_inicial); WHILE contador < intervalo DO INSERT INTO tb_ano_liturgico(data_ano_liturgico, dias_semanas) VALUES (var_data, var_dia); SET contador = contador + 1; SET var_data = DATE_ADD(data_inicial, INTERVAL contador DAY); SET var_dia = DAYNAME(var_data); END WHILE; END $$ DELIMITER ;
Não sei onde estou errando.Discussão (1)
Carregando comentários...