MyEclipse數(shù)據(jù)庫(kù)教程:在MyEclipse中編輯和執(zhí)行SQL
數(shù)據(jù)庫(kù)資源管理器工具包括了一個(gè)智能的SQL編輯器。在SQL編輯器中可以打開(kāi)一個(gè)數(shù)據(jù)庫(kù)連接,使其可以執(zhí)行SQL語(yǔ)句并自動(dòng)完成SQL相關(guān)片段的執(zhí)行。在本教程中,你將學(xué)習(xí)到:
- 啟動(dòng)和使用SQL代碼完成功能
- 執(zhí)行SQL語(yǔ)句
- 生成SQL查詢(xún)和表創(chuàng)建的腳本
- 更改SQL命令分隔符
持續(xù)時(shí)間:10分鐘
沒(méi)有MyEclipse?
1. 啟用SQL代碼完成功能
SQL代碼完成功能要求預(yù)裝編輯器相關(guān)數(shù)據(jù)庫(kù)的元數(shù)據(jù)。在默認(rèn)的情況下,SQL代碼完成功能是被禁用的,這是為了避免嚴(yán)重的性能問(wèn)題,因?yàn)榇斯δ芸赡軐?dǎo)致在非常低的帶寬下閱讀非常大的數(shù)據(jù)庫(kù)元數(shù)據(jù)或者檢索該信息。如果您喜歡代碼完成功能,可啟動(dòng)此選項(xiàng)。
(1)選擇Window>Preferences,展開(kāi)MyEclipse>Database Explorer,并選擇Performance Optimization。
(2)當(dāng)建立連接復(fù)選框時(shí)選擇加載所有的數(shù)據(jù)庫(kù)元數(shù)據(jù),然后單擊確定。

為了優(yōu)化元數(shù)據(jù)檢索,可以考慮使用模式過(guò)濾器。請(qǐng)參閱 來(lái)了解更多信息。
2. 使用SQL代碼完成功能
(1)選擇File>New>SQL File。

(2)在項(xiàng)目文件夾中選擇您想要保存的新的SQL文件和文件名,然后單擊Finish。

(3)在SQL編輯器中,選擇想要文件關(guān)聯(lián)的數(shù)據(jù)庫(kù)連接。
注意:此步驟需要代碼自動(dòng)完成以及片段正常執(zhí)行。

現(xiàn)在您可以輸入SQL語(yǔ)句,在每一部分的SQL片段中利用代碼輔助(Ctrl +空格鍵),如下圖所示。




提示:一個(gè)有用的SQL編輯器功能表現(xiàn)在同步數(shù)據(jù)庫(kù)瀏覽器的SQL編輯器。在編輯器中,按下Ctrl鍵并同時(shí)選擇表名。這個(gè)位置在所選表的數(shù)據(jù)庫(kù)瀏覽器上。
3. 執(zhí)行一個(gè)SQL語(yǔ)句
通過(guò)單擊或按CTRL+ F9來(lái)執(zhí)行所選中的SQL語(yǔ)句片段。在這種情況下,如果沒(méi)有選中SQL語(yǔ)句,如下面的示例所示,則SQL編輯器執(zhí)行整個(gè)編輯文本。最后的查詢(xún)結(jié)果顯示在SQL的結(jié)果視圖中。

4. 使用SQL生成工具
數(shù)據(jù)庫(kù)資源管理器工具提供了兩個(gè)SQL生成工具,表創(chuàng)建腳本生成和示例SQL查詢(xún)生成器。
要生成現(xiàn)有表的數(shù)據(jù)定義語(yǔ)言(DDL),右鍵單擊表中的數(shù)據(jù)庫(kù)瀏覽器并選擇Generate>DDL。
注意:在使用Oracle工作時(shí)專(zhuān)業(yè)級(jí)版本的用戶(hù)也有一個(gè)先進(jìn)的DDL生成功能。

重新創(chuàng)建選定表時(shí)會(huì)產(chǎn)生一個(gè)DDL腳本,并會(huì)在SQL編輯器中顯示。

要在表中生成一個(gè)示例的SELECT語(yǔ)句,在數(shù)據(jù)庫(kù)瀏覽器中右鍵單擊該表,并選擇Generate>Select Statement即可。

這會(huì)生成一個(gè)SELECT*語(yǔ)句,并在SQL編輯器中顯示。

5. 更改命令分隔符
默認(rèn)命令分隔符是分號(hào)(;),這就意味著分號(hào)是所有的SQL命令和查詢(xún)終止字符。然而在更復(fù)雜的腳本中,分號(hào)則經(jīng)常被用來(lái)作為內(nèi)部分隔而其他字符串用作命令分隔符,當(dāng)分號(hào)是命令分隔符時(shí)這樣的腳本運(yùn)行不正常。
您可以通過(guò)使用SQL編輯器的Cmd Sep下拉列表來(lái)改變命令分隔符。從分離器的現(xiàn)有設(shè)置選擇,或輸入您自己的類(lèi)型。

注意:Cmd Sep的下拉列表不適用于查詢(xún)Oracle編輯解析器的內(nèi)部管理。