oracle 更新语句条件匹配不生效

  • Post author:
  • Post category:其他


最近在工作中写了一个供别人调用的Oracle的存储过程接口,功能很简单,就是根据传入的几个参数来更新表中的某些数据,但是在联调过程中传入的更新匹配条件和被更新的数据一致对不上,更新的数据会比匹配的三个条件的数据多,也不报错。


最后发现是程序的入参变量名称和表结构的列名重了!!!!

程序大概如下:

PROCEDURE proc_save_spty(cust_code IN VARCHAR2,

busi_code IN VARCHAR2,


operation_code

IN VARCHAR2,

in_area_code IN VARCHAR2,

in_flow_no IN VARCHAR2,

oi_flag OUT VARCHAR2,

os_msg OUT VARCHAR2)IS

–uadate语句

UPDATE CMIS3.IMAGE_REQUISITION_REFERENCE p

set p.FINAL_AREA_CODE=in_area_code,p.FLOW_NO=in_flow_no

where p.ENTERPRISE_CODE=cust_code


AND p.OPERATION_CODE=operation_code


AND p.REQUISITION_CODE=busi_code;

commit;

END proc_save_spty;


入参的operation_code和表的列名OPERATION_CODE重了,导致这个匹配条件没起作用!!!



版权声明:本文为qq_34896199原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。