以下是示例储存过程的代码:

CREATE PROCEDURE delete_employee
    @salary_value INT
AS
BEGIN
    IF @salary_value = -3000
    BEGIN
        DELETE FROM employee
        WHERE salary = @salary_value
    END
    ELSE IF @salary_value < -5000
    BEGIN
        UPDATE employee
        SET salary = salary + 1000
        WHERE salary = @salary_value

        UPDATE employee
        SET bonus = bonus - 500
        WHERE salary = @salary_value
    END
END

该储存过程接受一个名为 'salary_value' 的整数参数。如果 'salary_value' 的值为 -3000,则从 'employee' 表中删除工资为此值的员工。如果 'salary_value' 的值小于 -5000,则将工资为该值的员工的薪资增加 1000,并将奖金减少 500。如果 'salary_value' 的值在 -5000 和 -3000 之间,则不执行任何操作。

执行此储存过程的示例代码:

EXEC delete_employee -3000; -- 删除工资为 -3000 的员工

EXEC delete_employee -4000; -- 增加工资为 -4000 的员工的薪资并减少奖金

原文地址: https://www.cveoy.top/t/topic/nGps 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录