Oracle中delete使用in做条件删除多条时删除失败

2025-03-26 10:47:31
推荐回答(2个)
回答(1):

存储过程有错误

 

问题主要在这里:

d.source_type = p_sCodes

;

select count(1)
      into v_count
      from dm_custlist_upload_batch d, cls_source_type t
     where 1 = 1
       and d.source_type = t.custlist_source_type_code
       and d.source_type = p_sCodes;

这个 p_sCodes 如果是I一个数字,用= 没问题。如果是2个数字 就得用in了。 你这里地方改一改就可以了

回答(2):

p_sCodes传入一共能有个呢?我记得in的参数个数不能超过1000,超过oracle本身就报错了。
不知道会不会是这个问题。