0
我想在動態列名傳遞給計算其標準偏差動態SQL,在Oracle,下面是代碼:在存儲過程中
CREATE OR REPLACE
PROCEDURE ReportCalculate
(
param_columnName IN VARCHAR2 DEFAULT 'COMPUTED_CP_MLIFTOFF_KNOT9OR10'
)
AS
sqlstr VARCHAR2(500);
result NUMBER;
BEGIN
sqlstr:='select stddev(:col) from LIDISUDUXIAO where 1=1 and NO_10_LIMITSIGN_DEPART_ID<>0';
execute immediate sqlstr into result using param_columnName;
DBMS_OUTPUT.PUT_LINE(result);
END;
我採用默認參數調用它,錯誤消息是:
Procedure execution failed
ORA-01722: invalid number
ORA-06512: at "AGS.REPORTCALCULATE", line 10
ORA-06512: at line 1
我該如何解決它?
列名是一個標識符和標識符不能綁定。 –