Procedure mysql

Estou realizando uma procedure no mysql que ao rodar, deve obter o resultado de uma consulta select e atualizar valores em uma determinada tabela. A procedure roda, mas nada acontece. Segue abaixo:

DELIMITER |
CREATE PROCEDURE prc_teste (IN cd_conta_atd float)
BEGIN

DECLARE vl_unitario float;
DECLARE cd_conta_atd INT;


SELECT 
            vl_unitario, cd_conta_atd, cd_pro_fat
    INTO vl_unitario 
    FROM vw_vigencia_valor 
    WHERE cd_conta_atd = cd_conta_atd;

  

UPDATE conta_paciente 
            SET vl_unitario = vl_unitario
              where  cd_conta_atd = cd_conta_atd
              and    cd_pro_fat = cd_pro_fat;

END
|
DELIMITER ;