ORACLE存储过程varchar2变量赋值问题。

2024-12-02 14:45:45
推荐回答(3个)
回答1:

看到错误提示的地方,你应该是想执行一个动态SQL(在open语句亮改中str是一个变量, 但是想把str用成SQL语句的in字句的部分),这明显是不对的(如敬蠢判果要用动态SQL,则是另外的写法)。

可以open的查询语句,直接在查询语句中根据ORGCODE的值用case when构造查询的条档洞件。例如:

where (case when ORGCODE = 'SH' and PORGCODE in ('A', 'B', 'C') then 'Y'
            when ORGCODE = 'A' and PORGCODE in ('A') then 'Y'
            ...
            else 'N' end) = 'Y'

回答2:

else if ****** then!

回答3:

你这个游标 重复给变量赋值有意义吗? 外加上还有语法错误