有如下存储过程,现在我想在参数v_CODE中传多个客户的CODE,以返回多个指定CODE的客户的信息,应该怎么处理?
PROCEDURE GetCustomerByPKID
(
v_CODE CUSTOMER.CODE%TYPE,
cur_OUT OUT myCursor
)
IS
BEGIN
OPEN cur_OUT FOR
SELECT ID,CODE,CUSTOMERNAME,CUSTOMERCODE,ADDRESS FROM CUSTOMERPOST
WHERE CODE in (v_CODE);
END GetCustomerByPKID; 以前我通常通过动态SQL实现,
"SELECT PKID,CUSTOMERNAME,CUSTOMERCODE,ADDRESS FROM CUSTOMERPOST
WHERE PKID in ("+v_CODE+")";
这样v_CODE可以任意组合.但在存储过程参数里面,任意组合的参数v_CODE被当作了一个条件,从而导致无法查出结果.知道的朋友请指点一下,谢谢!
PROCEDURE GetCustomerByPKID
(
v_CODE CUSTOMER.CODE%TYPE,
cur_OUT OUT myCursor
)
IS
BEGIN
OPEN cur_OUT FOR
SELECT ID,CODE,CUSTOMERNAME,CUSTOMERCODE,ADDRESS FROM CUSTOMERPOST
WHERE CODE in (v_CODE);
END GetCustomerByPKID; 以前我通常通过动态SQL实现,
"SELECT PKID,CUSTOMERNAME,CUSTOMERCODE,ADDRESS FROM CUSTOMERPOST
WHERE PKID in ("+v_CODE+")";
这样v_CODE可以任意组合.但在存储过程参数里面,任意组合的参数v_CODE被当作了一个条件,从而导致无法查出结果.知道的朋友请指点一下,谢谢!
http://community.csdn.net/Expert/topic/5017/5017983.xml?temp=.7903253