【ORACLE】SQL Developer 與 PL/SQL Developer與SQL PLUS

一、什麼是 SQL Developer?(參考自:ORCALE)html

二、什麼是PL/SQL Developer?(參考自:百度百科)web

三、什麼是SQL PLUS?(參考自:百度百科)sql

簡述:

ORACLE SQL DEVELOPER
功能更多些,更強大,適用於大多數開發人員。(Oracle psql dev是Oracle自帶的工具,11g已經內嵌到數據庫的安裝裏去了,也能夠自行下載官方工具免費正版)數據庫

PL/SQL DEVELOPER
相似命令行操做,須要記住Oracle的語法和設置項,更適合敲命令行的高級開發人員。(第三方工具)瀏覽器

SQL*plusoracle

是Oracle數據庫自帶的命令行工具,如今也有web版的iSql plus。(ORCALE內置)ide

 

區別:

以一個普通使用者(甚至說是一個並非着重在開發上的數據庫管理員)的身份比較一下Oracle SQL Developer和PL/SQL Developer。工具

1. 格式化的結果輸出。
這一點任何一個第三方工具都作得不錯,是一個基本功能。開發工具

2. 自動提示。
也就是上面提到的Completion Insight功能,能夠說,Oracle SQL Developer擁有的功能以及速度絕對不亞於PL/SQL Developer,甚至有更人性化的表現。好比當你鍵入select * from,空格以後,Oracle SQL Developer會馬上給出一個當前用戶下的全部Table的列表,若是繼續鍵入好比DBA三個字母,那麼列表將轉換爲DBA打頭的全部數據字典。而如 果你從一行的開頭鍵入exec四個字母,那麼當回車之後,Oracle SQL Developer會馬上給出一份全部能夠執行的存儲過程的列表。
最新版本中對於V$視圖的提示有bug,相信很快就能夠修改。測試

3. 代碼美化功能。
全部使用過PL/SQL Developer的朋友們應該都知道在最近這幾版中都有一個PL/SQL Beautifier的功能,能夠將一大串SQL語句格式化更容易閱讀的樣式。一樣Oracle SQL Developer也提供了這樣的功能,稱之爲Format,快捷鍵是Ctrl+F7。

4. 顯示SQL的執行計劃。
在Oracle SQL Developer中快捷鍵是F6,同時也提供了顯示Autotrace的結果,快捷鍵是F10(最新版本中彷佛有點兒小bug,有時候須要按兩次F10才能顯示)

5. 會話監控。
在PL/SQL Developer中咱們能夠顯示當前數據庫中的全部會話,點擊某一個會話,在下方會顯示該會話正在執行的SQL,正在經歷的等待事件以及其它一些能夠自 定義的感興趣的信息,Oracle SQL Developer一樣提供了這個功能,能夠在Tools -> Monitor Sessions菜單中找到它。

6. 快捷顯示對象信息。
好比寫了一條SQL語句,其中牽涉到一張表,咱們可能會想馬上看到這張表有哪些字段,這張表上有哪些約束哪些索引,若是是分區表有哪些分區,在 PL/SQL Developer中咱們會選中SQL語句中這張表的名字,而後右鍵 -> View,一樣Oracle SQL Developer也提供了這個功能,一樣能夠鼠標右鍵選中表名 -> Popup Describe,另外還有快捷鍵Shift+F4。

7. 編寫以及調試存儲過程。
我並不有太多的機會去編寫一個很長的存儲過程,所以這點我不敢對PL/SQL Developer和Oracle SQL Developer作過多的比較,可是我知道好幾個版本的PL/SQL Developer(包括最新版)在編譯存儲過程的某些特定語句的時候會致使ORA-600錯誤,而在SQL*Plus裏面直接編譯則徹底沒有問題,不少 客戶出現了這個問題尋求咱們的幫助,而咱們的回答是,抱歉,這是PL/SQL Developer的問題咱們不作技術支持,可是若是你要是改用了Oracle SQL Developer呢?恭喜你,雖然這是個免費的產品,可是仍然能夠獲得原廠商的技術支持。

好吧,具備了上述這些功能,至少對於我來講,Oracle SQL Developer已經徹底具有了平常管理數據庫的全部須要點,並且用起來一點兒也不以爲彆扭,只是可能快捷鍵的改變須要適應一下。好比在PL/SQL Developer中執行一個SQL是F8,而Oracle SQL Developer則是F9,顯示執行計劃一個是F5而另一個是F6,可是這都是小問題,不是嗎?要知道人生老是在不斷變化的,呵呵。

接下來是Oracle SQL Developer的閃光點,這些閃光點會讓Oracle SQL Developer更加可愛。

1. 自動更新。
Help -> Check for updates,將會自動將Oracle SQL Developer更新到最新的版本,包括多種插件。

2. 插件。
這是多麼使人興奮的功能,要知道,在瀏覽器領域的Firefox,在Java開發工具領域的Eclipse,都是由於支持插件(或者稱之爲擴展)體系,並 且有大量豐富的插件才成爲了面目一新的工具,噢,我知道PL/SQL Developer也是支持Plugins的,可是這麼多年了,Plugins始終只有那幾個。而Oracle SQL Developer才推出多久,咱們已經能夠看到像Fourth Elephant的Insider 這樣強大的擴展了,Insider一眼看上去簡直就是一個Quest Spotlight for Oracle,雖然我對這個插件不是那麼感興趣,可是你得認可它確實很強大。

3. 跨平臺。
PL/SQL Developer只能在Windows上使用,而Oracle SQL Developer目前已經支持了Windows,Mac OS X,Linux,這得益於Java的跨平臺特性,好吧,我認可Java用於桌面應用確實速度有些讓人不滿意,可是對於Oracle SQL Developer來講,僅僅是啓動速度有些慢而已,實際使用中仍然是行雲流水的。並且得益於依靠Java,Oracle SQL Developer鏈接數據庫,並不須要安裝Oracle數據庫客戶端,這確實很方便。

4. Reports。
一個新安裝的Oracle SQL Developer就已經包含了一個Reports標籤頁,內置了一部分能夠用於數據庫管理的腳本,而且能夠容許使用者自定義本身須要平常使用的腳本,而 且支持複雜的父子視圖效果,就是相似於Session Viewer的效果,點擊父結果中的某一行,可以將更詳細的關聯信息顯示在子結果中。每一個DBA都有本身積累的一套SQL,你能夠將它們所有放在 Oracle SQL Developer中。

5. 多鏈接。
在同一個Oracle SQL Developer界面裏,能夠鏈接多個數據庫實例,雖然這不是什麼複雜的功能,可是,PL/SQL Developer卻作不到。

6. tkprof直觀顯示。
用Oracle SQL Developer直接打開一個trc文件,將會出現一個圖形化的界面,而且包含了幾乎全部的tkprof功能,好比能夠按照某個指標進行排序。

7. 免費。
有什麼東西比免費更吸引人呢?曾經在itpub 上 作過一個投票調查,目前使用PL/SQL Developer的Oracle DBA或者開發人員佔據了超過60%,而其中絕大部分都在使用破解版。改成Oracle SQL Developer吧,你不用再去辛辛苦苦找最新的破解,你也能夠自豪地說我如今用的開發工具是Free的,是正版的。

好吧,我認可Oracle SQL Developer是一個新產品,在不少小功能上確實尚未像PL/SQL Developer那樣豐富。好比說也許咱們須要一個command window,一個相似於SQL*Plus的界面,能夠輸入諸如archive log list或者show sga這樣的命令,也能夠僅僅輸入edit 表名就能夠彈出更改表結構的界面,輸入edit 存儲過程名就能夠彈出編輯存儲過程的界面;也許咱們須要一個text import工具,能夠方便地經過圖形化界面將一個csv文件中的記錄插入到一個表中;也許咱們須要一個data gernerater工具能夠方便地生成測試數據。

可是,這些都是小事兒,沒有也就沒有吧。另外,請相信Oracle的研發實力,短短的一年時間,Oracle SQL Developer已經開始引人矚目了,並且Oracle一直在大力地研發這個工具在頻繁地發佈新版本,因此也許不久的未來這個工具將更好更強大。在這裏 能夠看到大量使用者提出的Feature Request,不少已經被接收,將會出如今下一個版本中。

這篇文章不是一個正規的Oracle SQL Developer的產品功能或者說使用介紹,這僅僅是由於我做爲一個普通的Oracle數據庫顧問發現了一個免費的好用的工具(只不過恰巧這個工具是 Oracle推出的而已)而感到欣喜以後的隨意而爲的文章,我很期待與已經在使用Oracle SQL Developer和看到這篇文章轉而使用它的各位作更多的經驗交流。

用一個使用者的感想作結,這個感想在Oracle SQL Developer的主頁 上也能夠找到。

 

注:區別參考來源:http://beckshanling.iteye.com/blog/458548

相關文章
相關標籤/搜索