想了半天,还是请教前辈吧!关于存储过程的问题
/*
说明:设置两个入参,一个是表的名字,一个是该表中state列的值(字符串型)
目的:想取得这个表中符合输入的state相匹配的记录的fee的总合,然后在进行别的操作
*/
CREATE OR REPLACE PROCEDURE OFFER_4011621_1(TABLE_NAME IN VARCHAR,
VAR2 IN VARCHAR) IS
TOTAL_FEE NUMBER(12) := 0;
V_SQL VARCHAR2(4000) := '';
BEGIN
---设置动态sql
V_SQL := 'SELECT sum(fee) into TOTAL_fee' || ' FROM ' || TABLE_NAME ||
' where state = '' ' || VAR2 || ' '' ';
---把动态SQL输出,发现输出的语句没有问题,调试用的
DBMS_OUTPUT.PUT_LINE(V_SQL);
---执行sql
EXECUTE IMMEDIATE V_SQL;
---把计算的total_fee显示出来
DBMS_OUTPUT.PUT_LINE(TOTAL_FEE);
---进行其它操作,现在程序出错,就是在command line中输入时,抱错了
END OFFER_4011621_1;