这是有效的Oracle存储过程吗?

ibm*_*khd 2 sql oracle plsql stored-procedures

我必须从oracle服务器调用一个不受我们控制的存储过程,所以在挖掘后我在groovy中写了一个脚本来了解这个过程的内容,就像这样

PROCEDURE SAM2_update_message_status (
      msg_id        IN   NUMBER,
      sam4_id       IN   NUMBER,
      msg_status    IN   NUMBER,
   smsc_answer   IN   VARCHAR2
   )
   IS
   BEGIN
   UPDATE TRC_MESSAGES_REMINDERS
   SET msg_status = msg_status
   WHERE MSG_ID = msg_id;
   COMMIT;
Run Code Online (Sandbox Code Playgroud)

根据我的编程经验,这是毫无意义的, MSG_ID = msg_id,msg_status = msg_status 但我不知道它是否在oracle中是相同的.

我打电话给它,但没有错误,我发送的值没有反映在桌子上.

这是一个有效的程序吗?

谢谢

JOT*_*OTN 9

根据范围规则,它将在参数名称之前使用列名,以便更新不执行任何操作.我总是在每个参数名称前加上"p_"以避免这样的冲突.