2010-02-17 91 views
6

我有如下因素的腳本文件:SQLPLUS不能終止SQL腳本

BEGIN 
    ... 
    a bunch of inserts 
    ... 
    COMMIT; 

EXCEPTION 
    WHEN OTHERS THEN ROLLBACK; 
END; 

當我在sqlplus執行此我得到如下:

SQL> @file.sql 
382 

這是因爲如果他不結束塊。我不熟悉使用pl/sql和sqlplus,所以我不知道我是否做錯了什麼。

任何想法?

回答

9

您需要在最後的END後添加一行;像這樣:

/ 

只是斜線作爲行上的第一個字符,然後換行。

+0

看起來我在同一時間發佈了我的回覆。感謝你的回答。 – Megacan

0

好的,我想通了。在發佈問題之前,我應該在文檔中進行更好的搜索。

反正根據此鏈接: http://download.oracle.com/docs/cd/B19306_01/server.102/b14357/ch4.htm#sthref840

SQL *加黃柏PL/SQL子程序中相同的方式作爲SQL命令,除了使用分號(;)或空白線不會終止,並執行一個塊。通過在新行上輸入句點(。)自行終止PL/SQL子程序。您也可以通過在新行上自行輸入斜線(/)來終止和執行PL/SQL子程序。

取代END,您必須以/結束。