0
CREATE OR REPLACE PROCEDURE Proc_TEST(T_DATE DATE DEFAULT TRUNC(SYSDATE))
AS
PREV1 VARCHAR(20);
mnth VARCHAR(20);
BEGIN
SELECT TO_CHAR(TO_DATE(TRUNC(T_DATE,'MM')-1),'MON_YYYY') INTO PREV1 FROM DUAL;
FOR i IN 1 .. 3 LOOP
mnth:='PREV'||i;
DBMS_OUTPUT.PUT_LINE('op'||mnth);
DBMS_OUTPUT.PUT_LINE('op'||PREV1);
END LOOP;
END;
/
opPREV1
opSEP_2015
,而我必須讓
opSEP_2015
opSEP_2015
。
請檢查這兩行代碼:'mnth:='PREV'|| i;'和 'DBMS_OUTPUT.PUT_LINE('op'|| mnth); ',這個錯誤是顯而易見的。 – krokodilko
我認爲你將標識符(例如'PREV1'變量)與文字串值(例如''PREV'|| i')混合在一起。這將有助於瞭解您嘗試通過此過程實現的目標。 –
嗨,Jeff,我有三個變量prev1,prev2,prev3,並試圖使用for循環打印這些變量中的值。 –