DELIMITER //
CREATE PROCEDURE update_charge(
IN p_user_id,
IN p_task_id,
IN p_num_hours,
IN p_charged_date
)
BEGIN
DECLARE v_count_charges int;
DECLARE v_charge_id int;
SELECT count(*) INTO v_count_charges
FROM charge
WHERE user_id = p_user_id
AND task_id = p_task_id
AND charged_date = p_charged_date;
IF v_count_charges > 0 THEN
UPDATE charges
SET num_hours = p_num_hours,
WHERE user_id = p_user_id
AND task_id = p_task_id
AND charged_date = p_charged_date;
ELSE
INSERT INTO charges
(
user_id,
task_id,
num_hours,
charged_date
) VALUES (
p_user_id,
p_task_id,
p_num_hours,
p_charged_date
);
END IF;
END;
//
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '
IN p_task_id,
IN p_num_hours,
IN p_charged_date
)
BEGIN
DECLARE v_count_' at line 2