我在Oracle中在這種情況下,參數是如何傳遞
CREATE OR REPLACE
PROCEDURE ReportCalculate
(
param_acTypeId in NUMBER
)
AS
sqlstr VARCHAR2(500);
result NUMBER;
BEGIN
sqlstr:='select count(1) from table1 where 1=1 and AC_TYPE_LEVEL1_ID=:acTypeId';
execute immediate sqlstr into result using param_acTypeId;
DBMS_OUTPUT.PUT_LINE(result);
END;
一個程序,但有時我想查詢所有的數據,SQL看起來像這樣 select count (1) from table1 where 1 = 1 and AC_TYPE_LEVEL1_ID = AC_TYPE_LEVEL1_ID
, 那麼應該如何傳遞參數,或param_acTypeId應該有任何默認值?是否僅在拼接sql時才能判斷?