我想使用已聲明的變量,即我中聲明部分聲明,使用開始匿名塊的結束部分與伸到statement.Is那可能宣佈?? E.g使用變量中聲明部分(匿名塊)
Declare
week number :=6;
Begin
select col1,col2+week from table;
end;
我想使用已聲明的變量,即我中聲明部分聲明,使用開始匿名塊的結束部分與伸到statement.Is那可能宣佈?? E.g使用變量中聲明部分(匿名塊)
Declare
week number :=6;
Begin
select col1,col2+week from table;
end;
由於匿名塊不能將任何數據返回給調用者,你會想,如果沒有執行此塊發生什麼?你不能將遊標返回給調用者,所以如果你沒有選擇數據到本地變量,我不知道你想要發生什麼。
潛在的,你只想要一個SQL * Plus腳本,即
SQL> variable week number;
SQL> exec :week := 6;
PL/SQL procedure successfully completed.
SQL> ed
Wrote file afiedt.buf
1* select empno, hiredate+:week from emp
SQL>/
EMPNO HIREDATE+
---------- ---------
7369 23-DEC-80
7499 26-FEB-81
7521 28-FEB-81
7566 08-APR-81
7654 04-OCT-81
7698 07-MAY-81
7782 15-JUN-81
7788 25-APR-87
7839 23-NOV-81
7844 14-SEP-81
7876 29-MAY-87
EMPNO HIREDATE+
---------- ---------
7900 09-DEC-81
7902 09-DEC-81
7934 29-JAN-82
1234
15 rows selected.
這是不可能在Oracle PL-SQL塊使用選擇不使用INTO
因爲甲骨文不接受不使用select語句into
聲明 所以,你的塊修改後會變成這個樣子:
Declare
week number :=6;
Column1 table.col1%type;
Column2 table.col2%type;
Begin
select col1,col2+week into Column1, Column2 from table;
end;
請向我提供的腳本在SQL導航 – SouravM 2011-04-19 10:33:01
@SouravM - 做es SQL Navigator支持SQL * Plus替換變量語法?如果沒有,它是否有它自己的語法?許多GUI將至少支持SQL * Plus語法的一個子集。 – 2011-04-19 13:51:32