PLSQL Developer使用技巧整理

轉載:www.cnblogs.com/joechinochl/articles/5520803.html

Shortcut:

===============================================================================

Edit/Undo???? Ctrl+Z

Edit/Redo???? Shift+Ctrl+Z

Edit/PL/SQL Beautifier? Ctrl+W?? (自定義)

Shift+Home? 選擇光標位置到行首

Shift+End? 選擇光標位置到行尾

Ctrl+Shift+Home 選擇光標位置到首行行首

Ctrl+Shift+End 選擇光標位置到尾行行尾

Object:View???? Shift+Ctrl+V 查看 (自定義)

Object:Describe??? Shift+Ctrl+D 結構 (自定義)

Object:Properties?? Shift+Ctrl+P 屬性 (自定義)

Object:Browse??? Shift+Ctrl+B 瀏覽 (自定義)

Object:Edit Data?? Shift+Ctrl+E 編輯數據(自定義)

Object:Standard Query? Shift+Ctrl+S 標準查詢(自定義)

Edit/Find Replace?? Ctrl+F

Edit/Find Next??? Ctrl+L

Edit/Find Previous?? Shift+Ctrl+L

Edit/Replace Next?? Ctrl+P

EDIT/Full Screen?? Ctrl+F11

Edit/Go to Line??? Ctrl+G

Edit/Next Tab Page?? Ctrl+H

Edit/Previous Tab Page? Shift+Ctrl+H

Session/Execute??? F8

Session/Break??? Shift+Esc

Session/Commit??? F10

Session/Rollback?? Shift+F10

Debug/Toggle Breakpoint? Ctrl+B

Debug/Start???? F9

Debug/Run???? Ctrl+R

Debug/Step Into??? Ctrl+N

Debug/Step Over??? Ctrl+O

Debug/Step Out??? Ctrl+T

Tools/Explain Plan?? F5

Tools/Code Assistant? F6

Editor: Start of Document Ctrl+PgUp OR Ctrl+Home

Editor: End of Document? Ctrl+PgDn OR Ctrl+End

Editor: Delete Line?? Ctrl+Y

Editor: Navigate Back? Alt+Left

Editor: Navigate Forward Alt+Right

SQL Window: Previous SQL Ctrl+Up

SQL Window: Next SQL? Ctrl+Down

1. PL/SQL Developer記住登陸密碼

在使用PL/SQL Developer時,

為了工作方便希望PL/SQL Developer記住登錄Oracle的用戶名和密碼;

設置方法:

PL/SQL Developer->tools->Preferences->Oracle->Logon History,

在右邊界面的"Definition"中,"Store history"是默認勾選的,

再勾選上"Store with password",即可.

上述方法若不好用,使用下面的方式:

在上面所說的界面中的"Fixed Users"中,

添加需要直接選擇后就可登錄的用戶名/密碼@ORACLE_SID,

如:

cbsdb/cbsdb@cbsdb

重新登錄的時候,從Oracle Logon的登錄界面的Username后面的...按鈕處,

選擇需要登錄的用戶即可。

2. 執行單條SQL語句(SQL Window中根據光標位置自動選擇語句)

在使用PL/SQL Developer的SQL Window時,按F8鍵,PL/SQL Developer默認是執行該窗口的所

有SQL語句,需要設置為鼠標所在的那條SQL語句,即執行當前SQL語句;

設置方法:PL/SQL Developer->tools->Preferences->SQL Window->Window types,

勾上"AutoSelect Statement" 即可。

注意,每條語句后面要加分號。

3. 格式化SQL語句

在使用PL/SQL Developer的SQL Window時,有時候輸入的SQL語句太長或太亂,

希望能用比較通用的寫法格式話一下,這樣看起來會好看些,也好分析;

使用方法:

選中需要格式化的SQL語句,然后點擊工具欄的PL/SQL beautifier按鈕即可.

4. 查看執行計劃

在使用PL/SQL Developer的SQL Window時,有時候輸入的SQL語句執行的效率,分析下表結構,

如何可以提高查詢的效率,可以通過查看Oracle提供的執行計劃;

使用方法:

選中需要分析的SQL語句,然后點擊工具欄的Explain plan按鈕(即執行計劃),

或者直接按F5即可。

5. 調試存儲過程

在使用PL/SQL Developer操作Oracle時,有時候調用某些存儲過程,或者調試存儲過程;

調用存儲過程的方法:

首先,在PL/SQL Developer左邊的Browser中選擇Procedures,

查找需要調用的存儲過程;然后,選中調試的存儲過程,點擊右鍵,

選擇Test,在彈出來的Test script窗口中,

對于定義為in類型的參數,需要給該參數的Value輸入值;

最后點擊上面的條數按鈕:Start debugger或者按F9;

最后點擊:RUN或者Ctrl+R。

(具體要調式一個存儲過程,請參照操作手冊,這個大概說明下應用)。

6. oralce精簡客戶端的使用

要想PL/SQL連接oracle數據庫,除了PL/SQL Developer 之外還需要Oracle客戶端,

有一個更方便的方法就是使用Oracle精簡客戶端,很多地方可以下載,文件很小,耗資源也少。

安裝完成后修改安裝目錄下的\Oracle\ora90\network\ADMIN\tnsnames.ora文件:

格式如下:

DATABASE_NAME =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

)

(CONNECT_DATA =

#(SERVICE_NAME = dealer)

(SID = SID_NAME)

#(SERVER = DEDICATED)

)

)

7. 關鍵字自動大寫:

了解一點編程的常識的人都知道,編碼風格很重要。

在閱讀代碼方面,保持一致的編碼風格,閱讀起來比較容易;

在執行效率方面,保持一致的編碼風格,更有可能被放到共享SQL區中,

這樣就提供了執行的效率。

另外,信息系統的核心是數據庫,系統出問題時最先要查的就是SQL語句,

怎樣在浩瀚的日志中快速找到那條SQL語句是件比較痛苦的事情。

SQL語句全部大寫并不能徹底解決這一問題,

但在一堆代碼中間找一行全部大寫的字符相對容易些,你的眼睛會感謝你。

設置也很簡單:

Tools->Preferences->Editor,將Keyword case選擇Uppercase。

我一般是讓關鍵字大寫,其他比如表名,字段名等都是小寫。

大家都應該養成一種自己的編碼習慣,并保持下去。

8. 右鍵菜單

在PL/SQL Developer(下面簡稱PLD)中的每一個文本編輯窗口,

如SQL Window,Command Window和Porgram Window,

右鍵點擊某個對象名稱,會彈出一個包含操作對象命令的菜單,我們這里稱之為右鍵菜單。

對象類型可以是表,視圖,同義詞,存儲過程和函數等。

根據對象類型的不同,彈出的菜單也有區別。

表和視圖有View, Edit, Rename, Drop, Query data 和Edit data等功能。

View和Edit分別是查看和修改表的結構信息,如字段,主鍵,索引和約束等。

Query data相當于新打開一個窗口,并執行select * from 表。

Edit data相當于新打開一個窗口,并執行select * from 表 for update。

存儲過程和函數有Test功能,選中后可以進入調試狀態。

有時由于PLD識別錯誤,右鍵點擊對象并不能出來正確的菜單,

可以在對象所在的DDL或DML語句的前面,加上分號,這樣PLD就能正確的判斷出對象的類型

9. Select for Update

有時我們需要把一些數據導入數據庫中,如果用UE拼Insert語句,會比較麻煩,而且操作性不強。

PLD的SQL Window可以查詢,新增,修改和刪除表的內容。

查詢自不必說,而新增,刪除和修改,只需在select語句后加入for update,

對表進行行級鎖定,然后點擊窗口的鎖型圖標,即可進入編輯狀態。

下面介紹一下如何從Excel中提取文本插入到數據庫中,

我們的Excel文件中有三列,在數據庫中建立臨時表:

CREATE TABLE t1(

cino varchar2(100),

contno varchar2(100),

loanno varchar2(100)

)

然后在SQL Window中輸入select t1 for update,并點擊鎖型鼠標,進入編輯狀態,

用鼠標點擊第一行的輸入窗口,這時PLD會死鎖幾秒鐘,

然后可以見到光標在第一行的輸入框中閃動,

用鼠標把CINO, CONTNO, LOANNO選中,進入Excel中,把需要插入數據庫的內容選中,

然后切換到PLD,按Ctrl + V,點擊√,然后再點擊Commit按鈕,

則數據提交到表t1中,執行select * from t1可以看到內容.

10. PL/SQL Beautifier(PL/SQL 美化器)

PLD 6以上版本有對DML代碼格式化的功能。

在SQL Window或Program Window中選中部分代碼(如果不選則對整個窗口的代碼操作),

在菜單中選Edit -> PL/SQL Beautifier,得到格式化的代碼。

對于非法的DML語句或DDL語句,PLD將會在下方狀態欄提示:

PL/SQL Beautifier could not parse text。

在缺省的狀態下,PLD會把DML語句的每一個字段都排在單獨的一行,這樣不方便查看。

在菜單中選Edit à PL/SQL Beautifier Options,進入Preferences窗口,

選擇Edit,進入配置文件編輯界面,在標簽欄選DML,

在窗口中部的Select, Insert和Update組框中把Fit選中,然后點擊Save,

把配置文件保存到PLD的安裝目錄下,點擊Close關閉。

在Rules file中輸入配置文件所在位置,點擊OK,完成配置文件切換。

這時再對代碼進行格式化,就可以使每一個字段盡可能的在一行上了。

11. TNS Names

菜單Help->Support Info->TNS Names,可以查看Oracle的tnsnames.ora。

12. Copy to Excel

在SQL Window中執行Select語句,在結果出來以后,右鍵點擊下面的數據區,

選擇Copy to Excel,可以把數據區的記錄原樣拷貝到Excel中。

但有兩點需要注意:

(1) field中不能以=開始,否則Excel會誤認為是函數;

(2) 數字不要超過17位,否則后面的位數將會置為0,

但可以通過在數字前加'來使Excel認為該field是文本,

同時對于數據庫中Numbe類型的字段,最好用to_char輸出,不然可能會顯示不正常;

13. 保持上次打開的SQL腳本

重新進入PL/SQL Developer時,Window List能打開上次退出時的文檔:

(1) 將菜單Tools->Window list選項勾上;

(2) Tools->Perferences->User Interface->Options的右邊,

將"Autosave desktop"勾選.

(3) 退出PL/SQL Developer重新進入.

14. 快速找到已知表名的表或其他對象:

在Tools菜單中,勾選上Object Browser,將對象瀏覽器打開,

雙擊對象瀏覽器中的某個對象所處的文件夾,

比如表都是在Tables文件夾中,

然后以盡快的速度輸入表名,即可找到以你輸入的幾個字母開頭的對象了.

15. 快速關閉打開于Windows List中的文檔窗口:

按住Shift鍵,左鍵點擊需要關閉的文檔窗口.

16. PL/SQL DEVELOPER中的專用復制(Special Copy)

如果你正在用 PL/SQL Developer 寫 SQL 和 PL/SQL 代碼,

隨后你又要在其它工具里使用代碼,例如象 3GL 這樣的程序設計語言,

那么你可能需要把這些代碼轉換為稍微不同的格式。

讓我們假設你已經在 PL/SQL Developer 里寫了并測試了這樣一個SQL 語句:

select? deptno, sum(sal) mgr_sal

from? emp

where? job = 'MANAGER'

group by deptno

order by mgr_sal desc

例如,如果你要在Borland Delphi 里使用這個語句,你可能需要象這樣的格式:

SQL := 'select deptno, sum(sal) mgr_sal from emp' + #13#10 +

'where job = ''MANAGER''' + #13#10 +

'group by deptno' + #13#10 +

'order by mgr_sal desc';

為了這個目的,在PL/SQL DEVELOPER中選中已寫好的SQL語句,鼠標右鍵,

在彈出的菜單中找到 Special Copy。這個功能有一個子菜單,它顯示了所有被定義的專用復制格式。

在選擇了格式之后,被轉換的代碼就被儲存在剪貼板上了,

這樣你就可以粘貼它到相應工具的編輯器里了。

專用復制格式被定義在 PL/SQL Developer 安裝目錄下的 SpecialCopy 子目錄里。

你可以改變預先確定的復制格式或者添加新的復制格式。

僅僅簡單地添加一個帶有 .copy 擴展名的文本文件就可以了,

它包含了一個針對 PL/SQL 代碼第一行的變量

()、一個針對 PL/SQL 代碼最后一行的變量()

和一個針對所有其它行的變量()。下面是一個針對 Borland Delphi 的例子:

;PL/SQL Developer SpecialCopy definition for Borland Delphi

; for first line

; for all other lines

; for last line

;

SQL := '' + #13#10 +

'' + #13#10 +

'';

第一行需要為指派到 SQL 的變量加上前言,接下來需要有一個 CR/LF 對。

最后一行不需要有CR/LF 對,但需要用分號來終止。所有其它行僅僅需要 CR/LF 接在后面。

如果 和 都與 一樣,你可以忽略它們。

在一些語言里,你需要對特定的字符使用換碼序列。

例如,在 C++ 里,你要對 tab字符(ASCII 碼為 9)使用 \t 。

要定義這些換碼序列,請使用 #define 關鍵詞:

#define char(9) = \t

#define \ = \\

String("\n") +

String("\n") +

String("");

你還可以使用 "#define compress"來指出你要從結果里移除所有多余的空字符(空格、制表符和換行)。

注意,.copy 文件的名字將被包括在菜單里,所以你應該使用描述性的文件名。

17. 在PL/SQL DEVELOPER中復制行記錄的簡便方法

(1) 單擊要拷貝的行記錄左邊的黑色小三角,該行被選中,右鍵復制。

(2) 粘貼至記事本里,然后復制剛才粘貼的內容。(該步驟不知何故不能缺)

(3) 單擊新記錄左邊的黑色小三角,右鍵粘貼即可。

18. 快捷鍵定義的位置:

Tools->Preferences->User Interface->Key configuration

選中需要定義的Item,然后按一個快捷鍵組合即可,

如果所按的快捷鍵已有定義,會有提示,這時候Cancel,另外選擇快捷鍵組合即可;

通常情況下,打開PLSQL Developer后,最經常干的事就是打開SQL Window和Command Window,

就給這兩個操作定義了快捷鍵, ALT+S 和 ALT + C,這樣拿鼠標點三下的事情只需要按一下鍵。

設置方法:

菜單Tools -> Preferences -> Key Configuration

注意:

如果設置了快捷鍵不起作用,

回到Tools -> Preferences -> Key Configuration界面,

點擊最上方的"Default Administrator"右邊的"..."按鈕,

在彈出的"Preference Set"界面中,對"Personal Preferences"

以及下面的"Definition"->"Description"進行一下設置.

19. 在窗口標題欄內顯示文件的完全路徑

Tools->Preferences->User Interface->Options

勾選"Show complete file path in windows titles"

20. Object Brower中自定義Object的順序以及登錄后默認自動選中My Objects

默認情況下,PL/SQL Developer登錄后,Brower里會選擇All objects,

如果你登錄的用戶是dba,要展開tables目錄,正常情況都需要Wait幾秒鐘,

而選擇My Objects后響應速率則是以毫秒計算的。

設置方法:

Tools菜單 -> Object Brower Filters,會打開Define Browser Filters界面,

選中"My Objects",并勾選 "Default" 設為默認即可。

Tools菜單 -> Object Brower Folders,會打開Define Browser Folders界面,

這里可以把經常用到的幾個目錄(比如:Tables Views Seq Functions Procedures)

移得靠上一點,并加上顏色區分,這樣你的平均尋表時間會大大縮短,試試看。

21. 雙擊即顯示表數據

鼠標雙擊表或者視圖時的默認響應實在讓我感到失望,因為我最關心的是表結構和數據,

但是雙擊后這兩件事情都沒有發生,也許默認響應是高手們需要的,

但對我來說查看數據和表結構是最主要的,其他的我不關心。

不過好的是這是可以設置的,你可以給鼠標雙擊和拖放綁定需要的事件,

比如:雙擊編輯數據,拖放顯示表結構,Yeah!

設置方法:

菜單Tools -> Preferences -> Object Browser,

在右側,為不同的Object Type綁定雙擊和拖放操作。

22. 去掉注釋的斜體樣式:

菜單Tools -> Preferences -> User Interface->Editor

在右邊的界面中"Syntax Highlighting"下,去掉"Comment"右邊的"Italic"的勾選.

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,362評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,577評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,486評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,852評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,600評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,944評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,944評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,108評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,652評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,385評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,616評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,111評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,798評論 3 350
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,205評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,537評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,334評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,570評論 2 379

推薦閱讀更多精彩內容