如何在oracle的过程中调用更新查询

时间:2010-04-08 06:37:06

标签: oracle

我有一个表t1,它有一个名为userid,week和year字段的文件。我想调用一个过程,它将所有三个值作为参数并触发更新查询。我该怎么办?

我的更新查询应该像

update t1 
    set week = (value of procedure argument) 
        , year = (value of procedure argument)
 where userid=(value of procedure argument);

1 个答案:

答案 0 :(得分:1)

您可以这样做:

CREATE OR REPLACE PROCEDURE my_update_proc (w number, y number, u number) IS
BEGIN
   UPDATE t1
   SET    week = w,
          year = y
   WHERE  userid = u;
   COMMIT;
END my_update_proc;
/

<强>更新 正如@Rene正确指出的那样,您可能不希望在存储过程中使用COMMIT语句。但是,如果删除它,调用者必须记住提交事务。