1. 程式人生 > >掌握PL/SQL小技巧,提高工作效率

掌握PL/SQL小技巧,提高工作效率

用分號隔開不同的SQL語句
在同一視窗輸入,可以在一次執行,PL/SQL將自動新建SQL視窗,分別執行不同的SQL語句(PL/SQL 7.1版本有次功能,低版本的可能會提示出錯)

用&符號引入變數
如select * from emp where ename='&ename'
執行時,PL/SQL就會彈出視窗,要你輸入ename的值

Ctrl+E檢視歷史記錄
可以調出Recall Statement 重新呼叫語句,調出歷史上成功執行過的Sql語句

執行單條SQL語句
在使用PL/SQL Developer的SQL Window時,按F8鍵,PL/SQL Developer預設是執行該視窗的所有SQL語句,需要設定為游標所在的那條SQL語句,即執行當前SQL語句; 設定方法:PL/SQL Developer 7.1.2 -->tools->Preferences-->Window types ,勾上“AutoExecute queries” 和“AutoSelect Statement”即可。

設定編輯器、表格字型等可以在 Tools->Preferences->fonts 中設定。

格式化SQL語句
在使用PL/SQL Developer的SQL Window時,有時候輸入的SQL語句太長或太亂,希望能用比較通用的寫法格式話一下,這樣看起來會好看些,也好分析; 使用方法:選中需要格式化的SQL語句,然後點選工具欄的PL/SQL beautifier按鈕即可。

檢視執行計劃
在使用PL/SQL Developer的SQL Window時,有時候輸入的SQL語句執行的效率,分析下表結構,如何可以提高查詢的效率,可以通過檢視Oracle提供的執行計劃; 使用方法:選中需要分析的SQL語句,然後點選工具欄的Explain plan按鈕(即執行計劃),或者直接按F5即可。

除錯儲存過程
在使用PL/SQL Developer操作Oracle時,有時候呼叫某些儲存過程,或者除錯儲存過程; 呼叫儲存過程的方法:首先,在PL/SQL Developer左邊的Browser中選擇Procedures,查詢需要呼叫的儲存過程;然後,選中除錯的儲存過程,點選右鍵,選擇Test,在彈出來的Test scrīpt視窗中,對於定義為in型別的引數,需要給該引數的Value輸入值;最後點選上面的條數按鈕:Start debugger 或者按F9;最後點選:RUN 或者Ctrl+R。

關鍵字自動大寫
Tools->Preferences->Editor,將Keyword case選擇Uppercase。一般是讓關鍵字大寫,其他比如表名、欄位名等都是小寫。大家都應該養成一種自己的編碼習慣,並保持下去。

更改預設執行快捷鍵F8為Ctrl+Enter
Tools->Preferences->Key Configuration->Session/Execute,然後按Ctrl+Enter。

AutoReplace自動替換功能
Tools->Preferences->Editor->AutoReplace->選上Enabled,並Edit檔案,加入以下內容:
sf=select * from
scf=select count(*) from
s=select
f=from
w=where
d=delete
u=update

儲存登陸資訊
(a)在工具欄中的[Log on]下來按鈕中選擇[Configure...],然後將Definition選項卡中將[Store history]和[Store with password]兩個多選框選中並儲存。之後只要錄入一次使用者名稱/密碼之後登陸資訊就會被儲存,下次登陸只需要選擇一個username之後password就會自動帶出,無需再次錄入,方便多多。
(b)對於過時的登陸資訊,可以通過[Log on]–》[Configure...]–》[Added users]將其刪除。

快速切換使用者
在工具欄中的[Log on]下來按鈕中選擇要切換的使用者及資料庫即可。

快速查詢某個資料庫物件
在PL/SQL Develper中有資料庫物件的搜尋功能,通過程式選單 [Tools --》Find Database Objects... ]即可開啟資料庫物件查詢視窗。

檢視只屬於當前登入使用者的物件
預設情況下,通過物件瀏覽器顯示的是當前使用者所有可以檢視的物件,包括一些系統物件。如果只想顯示當前使用者自己的物件的話,可以將物件瀏覽器上方的選擇框設定為“My Objects”即可。

快速查看錶的元資訊
對物件瀏覽器中右鍵點選該表,選擇[View],在開啟的新視窗中即可檢視該表的元資訊。包括:
(a)General:表的屬主、表空間名等資訊;
(b)Columns:欄位名、欄位型別、非空約束、預設值及註釋等資訊;
(c)Keys:表的主鍵資訊等;
(d)Checks:
(e)Indexs:索引資訊;
(f)Privileges:賦權資訊,該表的哪些許可權被賦予了哪些使用者。

在任何一個編輯視窗中,在表明上右鍵選擇[View]選項也可以檢視。

檢視某個表的建表語句
在物件瀏覽器中右鍵點選該表,選擇[View],然後在彈出視窗的右下角點選[View SQL]即可檢視該表的建表語句。建表語句之中也包含了與該表相關物件的建立操作,比如建立主鍵、建立索引及賦權等操作。

批量匯出建表語句
(a)通過選單選擇[Tools]–》[Export User Objects...],在開啟的視窗中選擇準備匯出的表即可。
通過此種方式匯出的sql指令碼中不會有insert語句,也就是表中的資料不會被同時匯出,只有DDL語句。
(b)通過選單選擇[Tools]–》[Export Tables...],在開啟的視窗中選擇準備匯出的表,同時需要將選項[Delete records]選項選中,然後匯出指令碼即可。

匯出初始化資料
通過選單選擇[Tools]–》[Export Tables...],在開啟的視窗中選擇準備匯出的表,同時將選項[Delete records]選項取消選中,然後匯出指令碼即可。

匯出資料位CSV格式
(a)在物件瀏覽器中選擇準備匯出的表,右鍵選擇[Query data],在彈出的視窗中,點選[Fetch last page]按鈕,將所有資料顯示出來;
(b)選擇資料行,點選右鍵,選擇[Export Results]–》[CSV file],則被選中資料行將被匯出。

直接編輯某個表中的資料

(a)開啟一個SQL Window,輸入如下語句:
select * from table_name for update;
(b)在結果展示列表頁面點選左上方的解鎖按鈕,允許直接編輯欄位內容;
(c)雙擊要編輯的欄位,修改欄位內容;
(d)點選左上方的提交按鈕,提交所修改內容;
(e)置為鎖定狀態,提交本次事務。 

執行單條SQL語句
在使用PL/SQL Developer的SQL Window時,按F8鍵,PL/SQL Developer預設是執行該視窗的所有SQL語句,需要設定為滑鼠所在的那條SQL語句,即執行當前SQL語句;
Tools->Preferences->Window types ->SQL Window,勾上“AutoSelect Statement” 即可。

取消程式碼智慧提示
平時在寫程式碼時,輸入“.”或者“_”之後,會出現智慧提示輸入。但是在網路環境不好的情況下,就會出現延時了。
Tools->Preferences->User Interface->Code?0?2Assistant->Automatically activated?0?2,取消選擇,就會關閉智慧提示了!

匯入資料

平時需要將一些txt或者excel的臨時資料匯入到資料庫的表裡,通過自己寫程式就有點麻煩了,pl/sql developer提供了一個方便的匯入介面:Tools->Text Importer