sqlplus腳本
用PL/SQL在oracle下執行多個SQL腳本的方法:
PL/SQL developer----->File------>New---->command window
然後在彈出的窗口裡依次執行:SQL> @f:\abc\a.sql;SQL> @f:\abc\b.sql;SQL> @f:\abc\c.sql;
SQL*Plus 中執行多個*.sql腳本文件的方法:
1、在SQL*Plus中執行單個sql腳本文件: SQL>@c:\aaa.sql ;
2、在SQL*Plus中執行多個sql腳本文件: 比如你要執行得2個sql腳本 a.sql 和 b.sql 現在你重新寫一個腳本 c.sql 其中得內容如下 @@a.sql @@b.sql 然後把c.sql放在a.sql和 b.sql 得同一個目錄中即可,然後在sqlplus下執行:SQL>@c.sql 就可以了。
⑵ 使用sqlplus怎麼導入sql腳本
比如:sql腳本所在目錄以及名稱為/home/oracle/0601.sql
導入:@/home/oracle/0601.sql
⑶ 如何用sqlplus執行sql腳本,且讓出錯後及時退出sqlplus
你先聯接上sqlplus後,再執行代碼,這樣只要不是sqlplus內部程序錯誤,就不會退出的。
⑷ 如何在sqlplus中運行創建觸發器的腳本
腳本編輯好以後放到一個目錄下,腳本名比如create.sql,最好是英文目錄,比如c盤的data目錄。
其中創建的腳本必須不能有錯誤,否則編譯肯定無法通過,然後要以分號結尾。
然後cmd進入data目錄,登錄sqlplus到指定資料庫。
執行
@create.sql
⑸ sqlplus 執行腳本文件時如何傳參數
d:\test.sql腳本如下:
[sql] view plain
select &1 from &2;
exit;
執行時這樣傳參數:sqlplus "scott/tiger@test" @d:\test.sql sysdate al
注意:參數必須用&[1-9]表示,不然傳不進去,會提示讓手動輸入參數
[sql] view plain
C:\>sqlplus "scott/tiger@test" @d:\test.sql sysdate al
D:\>sqlplus "scott/tiger@test" @d:\test.sql sysdate al
SQL*Plus: Release 11.2.0.1.0 Proction on 星期二 11月 1 21:59:00 2011
Copyright (c) 1982, 2010, Oracle. All rights reserved.
連接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Proction
With the Partitioning, OLAP, Data Mining and Real Application Testing options
原值 1: select &1 from &2
新值 1: select sysdate from al
SYSDATE
--------------
01-11月-11
從 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Proction
With the Partitioning, OLAP, Data Mining and Real Application Testing options 斷
開
D:\>
如果腳本中有重復用到相同的值,如果&1=&2:
d:\tes2.sql
[sql] view plain
delete scott.emp where no=&1 or deptno=&2;
commit;
執行時,就必須傳2個參數:
[sql] view plain
sqlplus "scott/tiger@test" @d:\test2.sql 10 10
小竅門: 這時用procere就可以不用傳多個相同的參數,則只用傳1個參數:
d:\test3.sql
[sql] view plain
declare
var_no number:=&1;
begin
delete scott.emp where no=var_no or deptno=var_no;
commit;
end;
sqlplus "scott/tiger@test" @d:\test3.sql 10
⑹ SQL*Plus中怎麼執行多個*sql腳本文件
1.在
SQL*Plus
中執行單個sql
腳本文件
:
SQL>@c:\aaa.sql
2.在SQL*Plus中執行多個sql腳本文件:
比如你要執行得2個sql腳本
a.sql
和
b.sql
現在你重新寫一個腳本
c.sql
其中得內容如下
@@a.sql
@@b.sql
然後把c.sql放在a.sql和
b.sql
得同一個目錄中即可,然後在sqlplus下執行:SQL>@c.sql
就可以了.
當然有具體路徑的加上路徑即可,如下:
SQL>
@E:\c.sql注意事項:
1>.sql文件都在一個目錄中;2>.尤其是c.sql文件中直接寫:
@@a.sql
@@b.sql
即可。
⑺ sqlplus創建存儲過程腳本不生效
創建過程中有語法錯誤。
在存儲體中每條SQL語句都是以分號結尾的,而在SQL控制台中在執行腳本時,一遇到分號就會執行SQL語句,這樣的話若是該條語句並不是正確的執行語句的話,那麼就會報錯。
⑻ 如何讓sqlplus登錄時自動執行某個腳本
有三種方法:
1.建一個login.sql或者修改glogin,sql 但是你沒許可權所以 算了。
2.設置一個環境變數SQLPATH 這個環境變數指向你的腳本。
3.把你要跑的腳本放入你dos窗口的啟動路徑下,就是敲完cmd 後 出來的窗口的最初的路徑。
⑼ SQL*Plus 中如何執行多個*.sql腳本文件
1.在SQL*Plus中執行單個sql腳本文件: SQL>@c:\aaa.sql 2.在SQL*Plus中執行多個sql腳本文件: 比如你要執行得2個sql腳本 a.sql 和 b.sql 現在你重新寫一個腳本 c.sql 其中得內容如下 @@a.sql @@b.sql 然後把c.sql放在a.sql和 b.sql 得同一個目錄中即可,然後在sqlplus下執行:SQL>@c.sql 就可以了. 當然有具體路徑的加上路徑即可,如下: SQL> @E:\c.sql注意事項: 1>.sql文件都在一個目錄中;2>.尤其是c.sql文件中直接寫: @@a.sql @@b.sql 即可。
⑽ java類中執行sqlplus腳本
寫成bat文件,改寫成批處理腳本,使用Java的Runtime 執行。舉例如下:
此實例來自《Java核心技術》卷一
classExecDemo{
publicstaticvoidmain(Stringargs[]){
Runtimer=Runtime.getRuntime();
Processp=null;
try{
p=r.exec("notepad");
}catch(Exceptione){
System.out.println("Errorexecutingnotepad.");
}
}
}