The error is in your code, you are explicitly telling oracle that the bind variables are varchar2, so why would Oracle evaluate it?
Try this ... DECLARE nnum1 NUMBER; nnum2 NUMBER; nresult NUMBER; BEGIN BEGIN nnum1 := 0; EXECUTE IMMEDIATE USING nnum1, OUT nresult; dbms_output.put_line(TO_CHAR(nresult)); END; BEGIN nnum1 := 1; nnum2 := 1; EXECUTE IMMEDIATE 'begin SELECT :1 + :2 INTO :0 FROM dual; END;' USING nnum1, nnum2, OUT nresult; dbms_output.put_line(TO_CHAR(nresult)); END; END; / Raj ______________________________________________________ Rajendra Jamadagni MIS, ESPN Inc. Rajendra dot Jamadagni at ESPN dot com Any opinion expressed here is personal and doesn't reflect that of ESPN Inc. QOTD: Any clod can have facts, but having an opinion is an art!
*********************************************************************2 This e-mail message is confidential, intended only for the named recipient(s) above and may contain information that is privileged, attorney work product or exempt from disclosure under applicable law. If you have received this message in error, or are not the named recipient(s), please immediately notify corporate MIS at (860) 766-2000 and delete this e-mail message from your computer, Thank you. *********************************************************************2