2013-09-04 3 views
0

Что я делаю здесь, я обновляю свои записи, когда мое условие record_id = 0 и activity_id = 0 не удается. Но какой результат я получаю: он обновляет все записи независимо от состояния ГДЕ activity_id = activity_ID (в Update tms_activity Line)StoredProcedure не работает правильно

Это он процедура я написал в MySql

CREATE PROCEDURE `EmpTimeSheet_SaveTasks`(IN user_ID INT(11), 
    IN date DATE, 
    IN record_ID INT(11), 
    IN task_ID INT(10), 
    IN Hours double, 
    IN Description longtext, 
    IN Updated_By_ID INT(11), 
    IN Project_ID INT(11), 
    IN Project_Name Varchar(50), 
    IN Task_Name Varchar(50), 
    IN Activity_ID INT(11), 
    IN Deleted_ID Varchar(100) 
    ) 
    BEGIN 
    IF record_ID = 0 THEN 

    INSERT IGNORE INTO tms_timesheet(user_id, date, is_freezed) VALUES (user_ID,date,0); 
    SET @ID = (SELECT record_id FROM tms_timesheet WHERE user_id= user_ID and date=date); 
    INSERT INTO tms_activity (timesheet_id, task_id, hours, description, updated_on, updated_by_id,project_id,project_name,task_name) VALUES (@ID ,task_ID,Hours ,Description, CURRENT_TIMESTAMP() ,user_ID,Project_ID,Project_Name ,Task_Name); 

    ELSE IF Activity_ID = 0 THEN 

    INSERT INTO tms_activity (timesheet_id, task_id, hours, description, updated_on, updated_by_id,project_id,project_name,task_name) VALUES (record_ID ,task_ID,Hours ,Description, CURRENT_TIMESTAMP() ,user_ID, Project_ID ,Project_Name,Task_Name); 

    ELSE 

     UPDATE tms_activity SET task_id=task_ID, hours=Hours, description=Description, updated_on=CURRENT_TIMESTAMP(), updated_by_id=user_ID,project_id=Project_ID,task_name=Task_Name,project_name=Project_Name *****WHERE activity_id = Activity_ID;***** 
    END IF; 

    END IF; 

    IF Deleted_ID!='' THEN 

    DELETE FROM tms_activity where activity_id in (Deleted_ID); 

    END IF; 

    END 

ответ

0

Я решил это сам на самом деле решение было тихо странно для меня, потому что, когда я изменил свое имя параметра из Activity_ID к ActivityID, он WORKED..I не знает причину, как это случилось и WHy..But его решена моя ошибка

-1

Может быть, проблема это имя вар. Попробуйте изменить «Activity_ID» на «vActivity_ID».

Смежные вопросы