2014-06-19 65 views
1

來命名該塊在Oracle PL/SQL中,爲什麼我無法使用相關的sympols命名該塊? 上午使用PL/SQL Developer.Thanks。在Oracle PL/SQL中,爲什麼我無法使用<<>>

整個代碼:我試着在下面的代碼中鍵入下面的代碼,但在x數字之後:= 10異常出現,我無法進一步輸入。

<<outer_block>> 
declare 
x number := 10; 
begin 
dbms_output.put_line('x is ' || x); 
end; 

代碼:

SQL> <<block1>> 
    2 declare 
    3 x number := 10; 

異常跟蹤:

<<block1>> 
declare 
x number := 10 

ORA-06550: line 5, column 0: 
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following: 

    * & = - + ; </> at in is mod remainder not rem 
    <an exponent (**)> <> or != or ~= >= <= <> and or like LIKE2_ 
    LIKE4_ LIKEC_ between || multiset member SUBMULTISET_ 

enter image description here

+0

錯誤,所以它應該是別的東西。你能分享一些更多的代碼片段嗎? –

+0

請檢查更新Question.Thanks for reply。 – sunleo

+0

你需要有一個BEGIN和END ..就像[here](http://en.m.wikipedia.org/wiki/PL/SQL#PL.2FSQL_Anonymous_Block) –

回答

2

這是一個在PL/SQL開發人員的錯誤。我是PL/SQL Developer的忠實粉絲,但是命令窗口的整體思想是錯誤的。整個功能是一個錯誤。改爲使用命令行SQL * Plus。

成千上萬的工具連接到Oracle。它們的工作方式稍有不同,並且有不同的錯誤。對於臨時開發而言,這並不重要,每個開發人員都可以使用他們熟悉的工具。 SQL * Plus對於開發非常糟糕。

但是,當涉及到故障排除和部署時,我們需要一種工具,在所有平臺上始終以相同的方式工作。該工具是SQL * Plus。

模擬SQL * Plus是一個可怕的想法。除非它能夠100%準確地完成,否則會破壞使用SQL * Plus的一致性的主要好處。始終使用真正的SQL * Plus,而不是模仿。


更新

正如其他人所指出的那樣,這是不使用標籤的正確方法。但是,該語法在技術上仍然有效,並且可以在SQL * Plus和其他一些環境中運行而不會出錯。

+0

謝謝你的答案。 – sunleo

相關問題