什麼是最好的oracle sql 開發工具?

1.最騙人的開發工具-- Oracle SQL Handler 我不知道是他soe做的好呢。還是我的搜索關鍵字有問題。總之,這個名字在搜索裡面基本上可以佔40%的份額。注意,不是一篇,是前3篇都是。但是就我個人使用來說,完全沒有覺出來好。一個優點都木有啊。

2.最輕便的開發工具--SI Object Browser 幾乎所有的日本oracle開發工具排行榜上都是榜首的一個工具。一直都以為日本只有開發硬體的時候知道什麼是短小精悍,沒想到軟體也是如此。輕便,而且可以自定義快捷鍵,搜索功能做的非常的贊。另外,他有一個非常值得推薦的一個功能,強制在編譯前編譯後各保存一遍sql文。這對於恢復程序非常的有用。要知道,我們現在一個sql文經常是上萬行的。如果兩個人同時編輯一個plsql的時候,經常會出現衝掉另外一個人的問題。所以這個功能非常的有用。順便說一句,這個不是免費的,但是有些公司提供正式版。我就是沾光了。

不足之處:

①沒有書籤。我不要求他像oracle developer那樣提供精確的1,2,3這樣的書籤,但是你好歹給我模糊的書籤啊。不然我要是上下翻片兒要翻好久的啊。

②沒有自動大寫關鍵字。雖然oracle自動識別大小寫,但是由於命名的時候全大寫的變數有時候難以識別,通常我們還是會有小寫的變數,但是關鍵字不能大寫的情況就表示著我們要不停的切換大小寫。這簡直就是折磨手指。

③不提供塊兒執行。當你在一個sql頁面寫上兩條select * from 的時候,就算你框上最下面一條,他也不會執行的。所以在一個複雜的sql下,我要不停切換5~8個sql執行窗口來查看結果。

④不支持代碼收縮,這個功能應該不是很難。但是非常有用。尤其是當你sql文很長的時候,收縮的sql文不僅閱讀方便,而且對於塊兒剪切否是,尤其是 as 表的時候,非常的有用。


各有長短,管理Toad更好,習慣就好


接上

3.最佳的免費開發工具-- oracle sql developer 甲骨文官方出品, 大公司很多時候對於是不是正版還是非常有要求的。所以我試著用了這個。到現在為止,我機器上依然存在這個軟體。綠色,體積適中(30M左右),相應速度不慢,做的非常的精緻。這個軟體我重點推薦一下幾個優點。

①精確書籤。你可以按 ctrl+shift+數字定位一個地方。下次你還可以按ctrl+數字再回來。這對於閱讀代碼,甚至編寫代碼的時候,都是非常有用的一個地方。但是很蛋疼的地方在於,當你一編譯這個sql文的時候,所有的書籤就消失了。甚至當你刪除了這個書籤所在行的代碼的時候,這個書籤也會消失。

②.自動大寫關鍵字。oracle sql developer 提供了非常智能的轉化方式,可以自動大寫關鍵字,甚至自動小寫關鍵字,大寫表名,變數名。

③過濾表欄位。當表內數據很多的時候,我們通常會過濾數據。SI Object Browser的方式在上面標出所有欄位,但是這樣並不直觀。oracle sql develop 做的就相當的好。類似excel的過濾一樣,可以很方便的通過下拉菜單直接選擇你要顯示的某一個項。當然,不能像excel那樣選擇多項。

④容易的複製行。由於主鍵的關係,通常情況下我們用複製黏貼數據的方式複製行內容來填充表的時候經常會衝突。oracle sql developer的好處在於,每一次複製都是用sql提出的,因此我們可以一次性的複製多行,再修改,一次性提交。好處在於你造數據的時候,可以專註於改變主鍵,而其他不重要的欄位完全可以不理會。

⑤支持換膚功能。這個功能雖然沒什麼用,但是我覺得開發人員真的很潮。

⑥代碼換膚。我不知道中文怎麼叫這個功能。說到底,代碼的關鍵字的顏色不同。比如eclipse版本的數字就是綠色的。而netbeans版本的就是藍色的。這雖然是一個小功能,但是我覺得對於轉行的開發者。尤其是從eclipse過來的開發者,相當的有感覺。

不足:

①代碼縮進。我不知道開發這個工具的人到底怎麼想的,代碼縮進的功能被他們搞得複雜的簡直不如沒有。你不能縮進一段cursor,當你縮進一段if。。。。end if之後,如果你再在下面打一句if 的時候,縮進很神奇的自動取消了。同樣的事情還會發生在case 語句裡面。你妹的,本來我就是嫌這樣的選擇語句閱讀麻煩才縮進的,你又跳出來要鬧哪樣啊!

②智能提示。我認為開發這個工具的人從來不知道oracle是支持多用戶的。竟然連「用戶」.「表名」這樣的智能提示都沒有。在多用戶的情況下我必須要寫用戶名的時候,智能提示就是廢物。另外,不知道是我沒找到設置的原因還是就是沒有,智能提示的沒用的東西太多了。我只需要表名,欄位名,但是每次提示,各種存儲過程名,甚至包名都會出來。我現在都把智能提示關了。

③執行效率。這裡的執行效率不是sql文的執行效率,而是工具本身的執行效率。當我只需要更新一個只有20個欄位,3條記錄的表的時候,這個工具竟然會卡住將近20s時間。同樣的語句我放在SI Object Browser裡面一秒都不用就執行完了。也不知道為什麼oracle sql developer為什麼會這麼慢。但是他執行大的sql文的時候,有時候跟SI Object Browser一樣快。

4.永不過時的工具-- pl sql developer。從我第一次知道oracle開始,看人用的就是pl sql develop。哪怕到現在,我周圍用這個工具的人依然比比皆是。我就不知道這幫人對於只有一個主sql窗口的IDE難道沒有怨念么。優點缺點我都不說了。總之一句話,這個工具就是汽車裡面的桑塔納,好壞都被人說爛了,不管你有什麼疑問,上網一定能找到答案。

5.最強大的--toad這個工具不免費,我一直在用試用版。買不起正式版。滿足了我各種小需求。精確書籤,自動大寫關鍵字,支持用戶名.表名,可以自己設置智能提示的範圍,固定的收縮代碼,甚至還提供一個非常非常優秀的自動替換功能。比如說。oracle裡面最讓人受不了的elsif 我相信有99%的人一定會打錯。(除非你一點兒都不用其他的開發語言,不然一定會混淆的)。toad支持類似輸入法的自動糾錯功能。當你打elseif得時候,他會自動的幫你轉換成elsif。甚至你可以像設置輸入法的快捷輸入一樣,設置toad的輸入,比如我最常用的三套就是sl = select * from 用戶.表名A; ito = insert into 用戶名.test002 values (』**『,』**『);uto = update 。。。。。 這樣的。用起來非常的方便。

不足:

①代碼顏色太丑。好吧,請原諒我這麼說。但是說真的。點開一個頁面,通篇的紅不紅,黃不黃的變數的時候,看的真心難受啊。當然,顏色不是不能調,但是由於選項太多,我還沒一個個看過去。上網搜配色方案也沒有。

②很多快捷鍵見不能自定義。很奇怪為什麼toad的快捷鍵。注釋竟然是ctrl + B。我想改。但是即便是我找到了修改快捷鍵的 comment 那一行,改完之後依然沒有效果,不知道為什麼。

③不需要的功能太多。一直有一個感覺,toad跟excel很像。我只會用excel不到30%的功能,但是這30%的功能做的別其他任何一個表格軟體都好,但是剩下的70%微軟不單賣。這就逼著很多人買盜版了。toad也是一樣,最多我就用他20%的功能,但是剩下的80%他也要打包賣,所以網上有那麼多的破解版。關鍵是太占屏幕了。我想清理一下都發現很多東西清理不掉。

最後,求大家推薦一個好的sql格式整理軟體。現在一寫大的sql。尤其是多表關聯的時候,因為是多人協作作業,這種大的sql文一合併之後,格式就慘不忍睹,如果再把他放在cursor裡面,那閱讀起來簡直就是一場痛苦的回憶。雖然現有的這些工具裡面都提供sql文整理,但是一陣實驗下來,感覺唯一能有點幫助的就是pl sql developer(姜還是老的辣啊)其他幾個,包括toad整理出來的代碼都沒辦法看。

哦。還有一個折中的軟體要推薦 OSqlEdit Oracle SQL 不是免費,但是如果你可以忍受他每次開啟的時候彈出的要你註冊的提示的話,還是可以正常使用的。日本人開發的,一直被SI Object Browser 壓著,在好多排行榜裡面都排行老二。唯一值得推薦的理由就是,右鍵表名之後,可以自動生成select insert 等語句。注意,是帶欄位名的哦。換句話說,一個有20個欄位的表,你右鍵一下,選一個select。他就生成一個寫了20個欄位的sql文。這個功能,真的不錯。

以上就是我對各種工具的總結,如果有人還發現什麼特別好的開發工具,求推薦。


一直在是plsql developer。只有它的執行計劃查看最方便,調試也很好用。toad不行了,太大,慢。


首先對@周德強的回答表示肯定。另外說一些自己的看法。

主流的oracle開發工具不外乎pl/sql developer,si object browser,和toad。

pl/sql developer是目前使用最廣泛的,而且網上相關資料很多,方便入手和操作。

si object browser在國內名氣還不夠大,但是用過的人都覺得非常人性化。

toad是老牌產品了,一直伴隨著爭議。

工具這種東西還是要順手的才是好的,因為每個人對工具的需求不盡相同。

建議都下載來用一用試一試,看看那個工具在使用中最適合你的需求。


@梅艷飛


用過Toad之後你就覺得PLSQL Developer就是坨屎


推薦閱讀:

sql server中如何儘可能高效地把表導出成excel,有好幾億條數據?
誰有精簡的SQLSerVer安裝包,聽說有一種只有28M?
win7如何安裝SQL資料庫2000?

TAG:SQL | 甲骨文Oracle |