2012-10-30 83 views
1

我有以下challange;Oracle SQL Developer如何動態運行sql腳本

我想在一個數據庫上執行一批* .sql文件。假定sql文件按其執行順序的升序進行命名。所以主要的sql腳本應該執行'dir/s * .sql',然後依次啓動每個找到的腳本。

這可能嗎?

下面是我發現的SQL Server的東西,但我想爲Oracle SQL Developer類似的東西。

http://pradeep1210.wordpress.com/2012/03/15/executing-a-set-of-sql-script-files-sql-on-a-group-of-sql-server-databases/

在此先感謝。

雷蒙德

+1

編寫一個將所有腳本連接成一個SQL文件然後運行它的shell腳本會更容易。 – Xophmeister

+2

爲什麼使用SQL Developer?調用sql * plus的簡單批處理/ shell腳本似乎更合適。 – Mat

+0

請記住,如果您正在使用T-SQL腳本執行此操作,則應將SQL文件放置在服務器端。 –

回答

2
  1. 創建如文件夾:Batch_Files在你的本地計算機,其中將包含要執行的所有SQL腳本,
  2. 然後打開你sql developer .Create一個文件中被稱爲batch.sql你的Batch_Files文件夾。
  3. Batch.sql中添加要依次執行的sql文件。

    @ file1.sql

    @ file2.sql :

    @ fileN.sql

這些文件包含您需要按順序運行代碼這是一個非常基本的例子。你可以根據你的需要做各種改變,你可以添加匿名塊來打印執行文件後的東西。我還沒有測試過t他是SQL-DEVELOPER,但我認爲這肯定會爲你工作。