溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

PLSQL Developer軟件使用大全

發(fā)布時(shí)間:2020-08-15 18:09:05 來源:ITPUB博客 閱讀:211 作者:guoliang668 欄目:關(guān)系型數(shù)據(jù)庫

PLSQL Developer軟件使用大全

PLSQL Developer軟件使用大全

PLSQL Developer軟件使用大全 

第一章 PLSQL Developer特性

PL/SQL Developer是一個(gè)集成開發(fā)環(huán)境,專門面向Oracle數(shù)據(jù)庫存儲(chǔ)程序單元的開發(fā)。如今,有越來越多的商業(yè)邏輯和應(yīng)用邏輯轉(zhuǎn)向了Oracle Server,因此,PL/SQL編程也成了整個(gè)開發(fā)過程的一個(gè)重要組成部分。PL/SQL Developer側(cè)重于易用性、代碼品質(zhì)和生產(chǎn)力,充分發(fā)揮Oracle應(yīng)用程序開發(fā)過程中的主要優(yōu)勢。

PL/SQL Developer主要特性:

PL/SQL編輯器,功能強(qiáng)大——該編輯器具有語法加強(qiáng)、SQLPL/SQL幫助、對(duì)象描述、代碼助手、編譯器提示、PL/SQL完善、代碼內(nèi)容、代碼分級(jí)、瀏覽器按鈕、超鏈接導(dǎo)航、宏庫等許多智能特性,能夠滿足要求性最高的用戶需求。當(dāng)您需要某個(gè)信息時(shí),它將自動(dòng)出現(xiàn),至多單擊即可將信息調(diào)出。

集成調(diào)試器(要求Oracle 7.3.4或更高)——該調(diào)試器提供您所需要的全部特性:跳入(Step In)、跳過(Step Over)、跳出(Step Out)、異常時(shí)停止運(yùn)行、斷點(diǎn)、觀察和設(shè)置變量、觀察全部堆棧等?;灸軌蛘{(diào)試任何程序單元(包括觸發(fā)器和Oracle8 對(duì)象類型),無需作出任何修改。

PL/SQL完善器——該完善器允許您通過用戶定義的規(guī)則對(duì)SQLPL/SQL代碼進(jìn)行規(guī)范化處理。在編譯、保存、打開一個(gè)文件時(shí),代碼將自動(dòng)被規(guī)范化。該特性提高了您編碼的生產(chǎn)力,改善了PL/SQL代碼的可讀性,促進(jìn)了大規(guī)模工作團(tuán)隊(duì)的協(xié)作。

SQL 窗口——該窗口允許您輸入任何SQL語句,并以柵格形式對(duì)結(jié)果進(jìn)行觀察和編輯,支持按范例查詢模式,以便在某個(gè)結(jié)果集合中查找特定記錄。另外,還含有歷史緩存,您可以輕松調(diào)用先前執(zhí)行過的SQL語句。該SQL編輯器提供了同PL/SQL編輯器相同的強(qiáng)大特性。

命令窗口——使用PL/SQL Developer 的命令窗口能夠開發(fā)并運(yùn)行SQL腳本。該窗口具有同SQL*Plus相同的感觀,另外還增加了一個(gè)內(nèi)置的帶語法加強(qiáng)特性的腳本編輯器。這樣,您就可以開發(fā)自己的腳本,無需編輯腳本/保存腳本/轉(zhuǎn)換為SQL*Plus/運(yùn)行腳本過程,也不用離開PL/SQL Developer集成開發(fā)環(huán)境。

報(bào)告——PL/SQL Developer提供內(nèi)置的報(bào)告功能,您可以根據(jù)程序數(shù)據(jù)或Oracle字典運(yùn)行報(bào)告。PL/SQL Developer本身提供了大量標(biāo)準(zhǔn)報(bào)告,而且您還可以方便的創(chuàng)建自定義報(bào)告。自定義報(bào)告將被保存在報(bào)告文件中,進(jìn)而包含在報(bào)告菜單內(nèi)。這樣,運(yùn)行您自己經(jīng)常使用的自定義報(bào)告就非常方便。

您可以使用Query Reporter免費(fèi)軟件工具來運(yùn)行您的報(bào)告,不需要PL/SQL Developer,直接從命令行運(yùn)行即可。

工程——PL/SQL Developer內(nèi)置的工程概念可以用來組織您的工作。一個(gè)工程包括源文件集合、數(shù)據(jù)庫對(duì)象、notes和選項(xiàng)。PL/SQL Developer允許您在某些特定的條目集合范圍之內(nèi)進(jìn)行工作,而不是在完全的數(shù)據(jù)庫或架構(gòu)之內(nèi)。這樣,如果需要編譯所有工程條目或者將工程從某個(gè)位置或數(shù)據(jù)庫移動(dòng)到其他位置時(shí),所需工程條目的查找就變得比較簡單,

To-Do條目——您可以在任何SQLPL/SQL源文件中使用To-Do條目快速記錄該文件中那些需要進(jìn)行的事項(xiàng)。以后能夠從To-Do列表中訪問這些信息,訪問操作可以在對(duì)象層或工程層進(jìn)行。

對(duì)象瀏覽器——可配置的樹形瀏覽能夠顯示同PL/SQL開發(fā)相關(guān)的全部信息,使用該瀏覽器可以獲取對(duì)象描述、瀏覽對(duì)象定義、創(chuàng)建測試腳本以便調(diào)試、使能或禁止觸發(fā)器或約束條件、重新編譯不合法對(duì)象、查詢或編輯表格、瀏覽數(shù)據(jù)、在對(duì)象源中進(jìn)行文本查找、拖放對(duì)象名到編輯器等。

此外,該對(duì)象瀏覽器還可以顯示對(duì)象之間的依存關(guān)系,您可以遞歸的擴(kuò)展這些依存對(duì)象(如包參考檢查、瀏覽參考表格、圖表類型等)。

性能優(yōu)化——使用PL/SQL Profiler,可以瀏覽每一執(zhí)行的PL/SQL代碼行的時(shí)序信息(Oracle8i或更高),從而優(yōu)化您SQLPL/SQL的代碼性能。

更進(jìn)一步,您還可以自動(dòng)獲取所執(zhí)行的SQL語句和PL/SQL程序統(tǒng)計(jì)信息。該統(tǒng)計(jì)信息包括CPU使用情況、塊I/O、記錄I/O、表格掃描、分類等。

HTML指南——Oracle目前支持HTML格式的在線指南。您可以將其集成到PL/SQL Developer工作環(huán)境中,以便在編輯、編譯出錯(cuò)或運(yùn)行時(shí)出錯(cuò)時(shí)提供內(nèi)容敏感幫助。

PL/SQL對(duì)象——不使用任何SQL,您就可以對(duì)表格、序列、符號(hào)、庫、目錄、工作、隊(duì)列、用戶和角色進(jìn)行瀏覽、創(chuàng)建和修改行為。PL/SQL Developer提供了一個(gè)簡單易用的窗體,只要將信息輸入其中,PL/SQL Developer就將生成相應(yīng)的SQL,從而創(chuàng)建或轉(zhuǎn)換對(duì)象。

模板列表——PL/SQL Developer的模板列表可用作一個(gè)實(shí)時(shí)的幫助組件,協(xié)助您強(qiáng)制實(shí)現(xiàn)標(biāo)準(zhǔn)化。只要點(diǎn)擊相應(yīng)的模板,您就可以向編輯器中插入標(biāo)準(zhǔn)的SQLPL/SQL代碼,或者從草稿出發(fā)來創(chuàng)建一個(gè)新程序。

查詢構(gòu)建器——圖形化查詢構(gòu)建器簡化了新選擇語句的創(chuàng)建和已有語句的修改過程。只要拖放表格和視窗,為區(qū)域列表選擇專欄,基于外部鍵約束定義聯(lián)合表格即可。

比較用戶對(duì)象——對(duì)表格定義、視圖、程序單元等作出修改后,將這些修改傳遞給其他數(shù)據(jù)庫用戶或檢查修改前后的區(qū)別將是非常有用的。這也許是一個(gè)其他的開發(fā)環(huán)境,如測試環(huán)境或制作環(huán)境等。而比較用戶對(duì)象功能則允許您對(duì)所選對(duì)象進(jìn)行比較,將不同點(diǎn)可視化,并運(yùn)行或保存應(yīng)用必要變動(dòng)的SQL腳本。

導(dǎo)出用戶對(duì)象——該工具可以導(dǎo)出用戶所選對(duì)象的DDL(數(shù)據(jù)定義語言)語句。您可以方便的為其他用戶重新創(chuàng)建對(duì)象,也可以保存文件作為備份。

工具——PL/SQL Developer為簡化日常開發(fā)專門提供了幾種工具。使用這些工具,您可以重新編譯全部不合法對(duì)象、查找數(shù)據(jù)庫源中文本、導(dǎo)入或?qū)С霰砀?、生成測試數(shù)據(jù)、導(dǎo)出文本文件、監(jiān)控dbms_alertdbms_pipe事件、瀏覽會(huì)話信息等。

授權(quán)——大多數(shù)開發(fā)環(huán)境中,您不希望所有數(shù)據(jù)庫都具備PL/SQL Developer的全部功能性。例如,數(shù)據(jù)庫開發(fā)中您可以允許PL/SQL Developer的全部功能性,而數(shù)據(jù)庫測試中您可以僅允許數(shù)據(jù)查詢/編輯和對(duì)象瀏覽功能,而數(shù)據(jù)庫制作中您甚至根本不希望PL/SQL Developer訪問。利用PL/SQL Developer授權(quán)功能,您可以方便的定義特定用戶或規(guī)則所允許使用的功能。

插件擴(kuò)展——可以通過插件對(duì)PL/SQL Developer功能進(jìn)行擴(kuò)展。Add-ons頁面提供插件可以免費(fèi)下載。Allround Automations或其他用戶均可提供插件(如版本控制插件或plsqldoc插件)。如果您具備創(chuàng)建DLL的編程語言,您還可以自己編寫插件。

多線程IDE——PL/SQL Developer是一個(gè)多線程IDE。這樣,當(dāng)SQL查詢、PL/SQL程序、調(diào)試會(huì)話等正在運(yùn)行時(shí),您依然可以繼續(xù)工作。而且,該多線程IDE還意味著出現(xiàn)編程錯(cuò)誤時(shí)不會(huì)中止:您在任何時(shí)間都可以中斷執(zhí)行或保存您的工作。

易于安裝——不同于SQL*Net,無需中間件,也無需數(shù)據(jù)庫對(duì)象安裝。只需點(diǎn)擊安裝程序按鈕,您就可以開始安裝從而使用軟件了。

 

 

第二章 PLSQL Developer配置

 

2.1   記住密碼   

   這是個(gè)有爭議的功能,因?yàn)橛涀∶艽a會(huì)給帶來數(shù)據(jù)安全的問題。但假如是開發(fā)用的庫,密碼甚至可以和用戶名相同,每次輸入密碼實(shí)在沒什么意義,可以考慮讓PLSQL Developer記住密碼。

設(shè)置方法:菜單Tools --> Preferences --> Oracle --> Logon History --> Store With Password 

重新登錄輸入一次密碼則記住了。

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

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

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

:

cbsdb/cbsdb@cbsdb

重新登錄的時(shí)候,Oracle Logon的登錄界面的Username后面的...按鈕處,

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

2.2   SQL語句字符全部大寫

信息系統(tǒng)的核心是數(shù)據(jù)庫,系統(tǒng)出問題時(shí)最先要查的就是SQL語句,怎樣在浩瀚的日志中快速找到那條SQL語句是件比較痛苦的事情。 SQL語句全部大寫并不能徹底解決這一問題,但在一堆代碼中間找一行全部大寫的字符相對(duì)容易些。設(shè)置方法:菜單Tools --> Preferences --> Editor --> Keyword Case --> Uppercase

2.3   特殊Copy   

SQL Window里寫好的SQL語句通常需要放到Java或者別的語言內(nèi),就需要轉(zhuǎn)成字符串并加上相應(yīng)的連字符,這一個(gè)事不需要再重復(fù)做了,在寫好的SQL 上點(diǎn)右鍵,使用特殊Copy即可!

設(shè)置方法:鼠標(biāo)右鍵 --> Special Copy

2.4   自定義快捷鍵  

   PLSQL Developer里預(yù)留了很多鍵讓用戶自定義,通常情況下,打開PLSQL Developer后,最常用的就是打開SQL WindowCommand Window,就可以給這兩個(gè)操作定義快捷鍵ALT+SALT+ C。

設(shè)置方法:菜單Tools --> Preferences --> Key Configuration

 

Shortcut:

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

Edit/UndoCtrl+Z

Edit/RedoShift+Ctrl+Z

Edit/PL/SQL BeautifierCtrl+W(自定義)

Shift+Home選擇光標(biāo)位置到行首

Shift+End選擇光標(biāo)位置到行尾

Ctrl+Shift+Home選擇光標(biāo)位置到首行行首

Ctrl+Shift+End選擇光標(biāo)位置到尾行行尾

Object:ViewShift+Ctrl+V查看(自定義)

Object:DescribeShift+Ctrl+D結(jié)構(gòu)(自定義)

Object:PropertiesShift+Ctrl+P屬性(自定義)

Object:BrowseShift+Ctrl+B瀏覽(自定義)

Object:Edit DataShift+Ctrl+E編輯數(shù)據(jù)(自定義)

Object:Standard QueryShift+Ctrl+S標(biāo)準(zhǔn)查詢(自定義)

Edit/Find ReplaceCtrl+F

Edit/Find NextCtrl+L

Edit/Find PreviousShift+Ctrl+L

Edit/Replace NextCtrl+P

EDIT/Full ScreenCtrl+F11

Edit/Go to LineCtrl+G

Edit/Next Tab PageCtrl+H

Edit/Previous Tab PageShift+Ctrl+H

 

Session/ExecuteF8

Session/BreakShift+Esc

Session/CommitF10

Session/RollbackShift+F10

 

Debug/Toggle BreakpointCtrl+B

Debug/StartF9

Debug/RunCtrl+R

Debug/Step IntoCtrl+N

Debug/Step OverCtrl+O

Debug/Step OutCtrl+T

 

 

Tools/Explain PlanF5

Tools/Code AssistantF6

 

Editor: Start of DocumentCtrl+PgUpORCtrl+Home

Editor:End of DocumentCtrl+PgDnORCtrl+End

Editor:Delete LineCtrl+Y

Editor:Navigate BackAlt+Left

Editor:Navigate ForwardAlt+Right

SQL Window:Previous SQLCtrl+Up

SQL Window:Next SQLCtrl+Down

 

 

 

2.5   執(zhí)行單條SQL語句(SQL Window中根據(jù)光標(biāo)位置自動(dòng)選擇語句)

 

   在使用PL/SQL DeveloperSQL Window時(shí),按F8鍵,PL/SQL Developer默認(rèn)是執(zhí)行該窗口的所有SQL語句,需要設(shè)置為鼠標(biāo)所在的那條SQL語句,即執(zhí)行當(dāng)前SQL語句;

設(shè)置方法:PL/SQL Developer  -->tools->Preferences-->Window types ,勾上“AutoSelect Statement” 即可。注意,每條語句后面要加分號(hào)。 

 

2.6   自動(dòng)替換

   快捷輸入SQL語句,例如輸入s,按下空格,自動(dòng)替換成SELECT;再例如,輸入sf,按下空格,自動(dòng)替換成SELECT * FROM,非常方便,節(jié)省了大量的時(shí)間去編寫重復(fù)的SQL語句。

   設(shè)置方法:菜單Tools --> Preferences --> Editor --> AutoReplace. --> Edit

   下面定義了一些規(guī)則作為參考

s=SELECT

f=FROM

w=WHERE

o=ORDER BY

d=DELETE

sf=SELECT * FROM

df=DELETE FROM

sc=SELECT COUNT(*) FROM

 

在使用PL/SQL DeveloperSQL Window時(shí),有時(shí)候輸入的SQL語句太長或太亂,希望能用比較通用的寫法格式話一下,這樣看起來會(huì)好看些,也好分析;

使用方法:選中需要格式化的SQL語句,然后點(diǎn)擊工具欄的PL/SQL beautifier按鈕即可.

  點(diǎn)擊菜單 tools -> window list, 將彈出的小窗口拖到左下角合適位置,然后點(diǎn)擊菜單 window->save layout

2.9   防止登錄超時(shí) 

  tools->Preferences-->Oracle->Connection  選擇 "check connection"

2.10   不備份sql文件

  tools->Preferences->Files->backup,頁面中backup files中選擇 disabled

2.11   右鍵菜單

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

SQL Window,Command WindowPorgram Window,

右鍵點(diǎn)擊某個(gè)對(duì)象名稱,會(huì)彈出一個(gè)包含操作對(duì)象命令的菜單,我們這里稱之為右鍵菜單。

 

對(duì)象類型可以是表,視圖,同義詞,存儲(chǔ)過程和函數(shù)等。

根據(jù)對(duì)象類型的不同,彈出的菜單也有區(qū)別。

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

ViewEdit分別是查看和修改表的結(jié)構(gòu)信息,如字段,主鍵,索引和約束等。

Query data相當(dāng)于新打開一個(gè)窗口,并執(zhí)行select * from 表。

Edit data相當(dāng)于新打開一個(gè)窗口,并執(zhí)行select * from for update

存儲(chǔ)過程和函數(shù)有Test功能,選中后可以進(jìn)入調(diào)試狀態(tài)。

有時(shí)由于PLD識(shí)別錯(cuò)誤,右鍵點(diǎn)擊對(duì)象并不能出來正確的菜單,

可以在對(duì)象所在的DDLDML語句的前面,加上分號(hào),這樣PLD就能正確的判斷出對(duì)象的類型

 

2.12   TNS Names

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

2.13   Copy to Excel

SQL Window中執(zhí)行Select語句,在結(jié)果出來以后,右鍵點(diǎn)擊下面的數(shù)據(jù)區(qū),

選擇Copy to Excel,可以把數(shù)據(jù)區(qū)的記錄原樣拷貝到Excel中。

但有兩點(diǎn)需要注意:

(1)field中不能以=開始,否則Excel會(huì)誤認(rèn)為是函數(shù);

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

但可以通過在數(shù)字前加'來使Excel認(rèn)為該field是文本,

同時(shí)對(duì)于數(shù)據(jù)庫中Numbe類型的字段,最好用to_char輸出,不然可能會(huì)顯示不正常;

2.14   保持上次打開的SQL腳本

重新進(jìn)入PL/SQL Developer時(shí),Window List能打開上次退出時(shí)的文檔:

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

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

"Autosave desktop"勾選.

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

 

2.15   快速找到已知表名的表或其他對(duì)象

Tools菜單中,勾選上Object Browser,將對(duì)象瀏覽器打開,

雙擊對(duì)象瀏覽器中的某個(gè)對(duì)象所處的文件夾,

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

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

2.16   快速關(guān)閉打開于Windows List中的文檔窗口:

按住Shift,左鍵點(diǎn)擊需要關(guān)閉的文檔窗口.

2.17   去掉plsql 9.0及以上版本的多連接模式(找了很久的,必做的)

plsql 9.0及以上版本的多連接模式在實(shí)際的開發(fā)過程中容易連接錯(cuò)誤的庫導(dǎo)致生產(chǎn)事故,可以關(guān)閉這個(gè)功能,如圖:

 

 

 

2.18   設(shè)置連接指示燈

如下圖設(shè)置后的外觀就有所改變:

 

如果連接上有所顯示:

 

2.19   null 值的顯示

由于結(jié)果集中的空值和空格難以區(qū)分,所以可以進(jìn)行設(shè)置顏色來區(qū)分null值。

 

2.20  設(shè)置最近對(duì)象的最大值

 

2.22  設(shè)置工具欄

當(dāng)你鍵入數(shù)據(jù)庫對(duì)象的名字時(shí),代碼助手將自動(dòng)地顯示關(guān)于它們的信息,這個(gè)首選項(xiàng)頁允許你定義這個(gè)特性的行為。

 

自動(dòng)激活

在某一個(gè)延遲之后,代碼助手能自動(dòng)地被調(diào)用(請(qǐng)看下面)。你還可以通過功能鍵選擇手工激活代碼助手。

 

延遲

編輯器在顯示代碼助手列表之前將等待的毫秒數(shù)。

 

代碼風(fēng)格

控制了當(dāng)你選擇了已選的項(xiàng)目時(shí)它們將怎樣被插入到編輯器里:

?  Smart - 代碼助手將考慮被描述的對(duì)象來決定風(fēng)格。

?  Init Caps - 每個(gè)詞(用下劃線分隔)的首字符大寫。

?  Lowercase - 所有字符都轉(zhuǎn)換到小寫。

?  Uppercase –所有字符都轉(zhuǎn)換到大寫。

 

如果可能使用原來的大小寫

這個(gè)選項(xiàng)被允許時(shí),如果可能的話,代碼助手將確定來自于存儲(chǔ)于Oracle 詞典的源里的標(biāo)識(shí)符的大小寫。這將應(yīng)用到所有的程序單元和它們的元素(參數(shù)、類型等等)以及應(yīng)用到查看列,并且越過了上面描述的代碼風(fēng)格首選項(xiàng)。如果原始的大小寫不能被確定,代碼風(fēng)格將被應(yīng)用。你可以因執(zhí)行的原因要求禁止這個(gè)特性。

 

描述用戶

確定了當(dāng)你鍵入一個(gè)后面跟隨著句點(diǎn)的用戶名時(shí)被用戶擁有的對(duì)象是否被列出來。如果這個(gè)選項(xiàng)被允許,你還可以定義哪些對(duì)象類型你要包括在里表里。

 

描述前后關(guān)系確定了代碼助手是否應(yīng)該描述當(dāng)前用戶、編輯器和程序單元的前后關(guān)系。

 

最少字符數(shù)

確定了在前后關(guān)系描述能自動(dòng)地被調(diào)用之前有多少個(gè)字符的詞需要被鍵入。注意,你始終可以手工調(diào)用代碼助手,即使字符數(shù)沒有被鍵入也是這樣。

 

描述標(biāo)準(zhǔn)函數(shù)

在默認(rèn)的情況下,代碼助手將描述標(biāo)準(zhǔn)的函數(shù)諸如to_char add_months 等等。如果你很熟悉這些函數(shù),你可以禁止這個(gè)選項(xiàng)。

2.24  PL/SQL Developer下設(shè)置“長SQL自動(dòng)換行”

進(jìn)入到ToolsPreferencesEditor下進(jìn)行相關(guān)設(shè)置,步驟如下圖:

點(diǎn)擊Editor”項(xiàng)進(jìn)行設(shè)置,如下圖:

本次設(shè)置,為了實(shí)現(xiàn)長代碼自動(dòng)換行,勾選wrap lines”即可。

長代碼自動(dòng)換行了,更易于顯示閱讀了,如下所示:

補(bǔ)充上圖SQL是錯(cuò)誤的,只為演示長SQL換行,正常書寫應(yīng)該為:

SQL> create table cool ("1" number(4),"2" varchar2(10),"3" varchar2(9),"4" number(4),"5" date,"6" number(7,2),"7" number(7,2),"8" number(2)); 

Table created   

 

 

 

第三章 PLSQL Developer使用技巧

3.1   新建命令窗口

 

 

Dynamic Performance Tables not accessible,

Automatic Statistics Disabled for this session

 

You can disable statistics in the preference menu,or obtanin select

priviliges on the v$session,v$sesstat and v$statname tables

 

這個(gè)報(bào)錯(cuò)信息在不同的PL/SQL Developer版本都會(huì)出現(xiàn),從上面詳細(xì)的報(bào)錯(cuò)提示信息中我們可以判斷得到,報(bào)錯(cuò)原因不在工具本身。

產(chǎn)生該提示原因

plsql dev在用戶運(yùn)行過程中,要收集用戶統(tǒng)計(jì)信息,但是由于你現(xiàn)在登錄的用戶沒有訪問v$session,v$sesstat and v$statname視圖的權(quán)限,所以不能收集當(dāng)前用戶的統(tǒng)計(jì)信息,和plsql dev工具中配置的Automatic Statistics相沖突,所以就出現(xiàn)了這個(gè)提示

 

在此,詳細(xì)記錄一下這個(gè)小問題的三種處理方法。

 

3.2.1   第一種處理方法(不推薦)

 

就是在報(bào)錯(cuò)的Error對(duì)話框中將“Don't show this message again”選項(xiàng)選中,下次就不在提示這個(gè)錯(cuò)誤了。

 

這種方法應(yīng)該可以叫做鴕鳥方式的處理方法。沒有從根本上解決這個(gè)問題。

 

 

報(bào)錯(cuò)信息中描述的非常詳細(xì),原因是動(dòng)態(tài)性能表沒有權(quán)利被訪問導(dǎo)致的問題,因此,我們通過把所需訪問權(quán)限賦予給具體用戶的方法來解決這個(gè)問題。

 

這里給出我能想到的三種具體處理方法。大家可以繼續(xù)補(bǔ)充。

 

1)如果只是某一具體用戶有權(quán)限查詢這三個(gè)動(dòng)態(tài)性能視圖,可以如下進(jìn)行操作

 

這里注意一下:我們授權(quán)的視圖是V_$session不是V$session,因?yàn)?/span>V$session是同名不是具體的視圖。否則您會(huì)收到下面這個(gè)錯(cuò)誤。

 

sys@ora10g> grant select on V$session to user_sec;

 

grant select on V$session to user_sec

 

*

 

ERROR at line 1:

 

ORA-02030: can only select from fixed tables/views

 

正確的授權(quán)方法如下:

 

SQL> grant select on V_$session to user_sec;

 

SQL> grant select on V_$sesstat to user_sec;

 

SQL> grant select on V_$statname to user_sec;

 

2)可以使用下面這個(gè)簡單粗暴的方法處理之。

 

SQL> grant SELECT ANY DICTIONARY to user_sec;

 

3)以上兩種方法是針對(duì)特定用戶的處理方法,如果想讓所有用戶(不局限在上面的user_sec用戶)都能夠查詢這三個(gè)動(dòng)態(tài)性能視圖,可以通過將查詢權(quán)限授權(quán)給public方法來實(shí)現(xiàn),操作如下。這樣就可以保證所有開發(fā)人員都不會(huì)再出現(xiàn)上述的報(bào)錯(cuò)信息了。

 

SQL> grant select on V_$session to public;

 

SQL> grant select on V_$sesstat to public;

 

SQL> grant select on V_$statname to public;

 

 

3.2.3   第三種方法(推薦)

 

徹底禁掉PL/SQL Developer的這個(gè)功能。

 

方法如下:

 

導(dǎo)航到Tools --> Preferences --> Options

 

找到“Automatic Statistics”選項(xiàng),將其前面的小對(duì)勾去掉,然后點(diǎn)擊“Apply”“OK”保存退出

 

3.3   查看執(zhí)行計(jì)劃

 

  在使用PL/SQL DeveloperSQL Window時(shí),有時(shí)候輸入的SQL語句執(zhí)行的效率,分析下表結(jié)構(gòu),如何可以提高查詢的效率,可以通過查看Oracle提供的執(zhí)行計(jì)劃;

使用方法:選中需要分析的SQL語句,然后點(diǎn)擊工具欄的Explain plan按鈕(即執(zhí)行計(jì)劃),或者直接按F5即可。

這個(gè)里邊點(diǎn)擊下一步下一步就可以看到執(zhí)行計(jì)劃的過程。

另外,對(duì)于plsql 11中還可以看到html格式,Plan Hash ValueSQL PROFILE,非常實(shí)用:

 

3.4   調(diào)試存儲(chǔ)過程 

 

   在使用PL/SQL Developer操作Oracle時(shí),有時(shí)候調(diào)用某些存儲(chǔ)過程,或者調(diào)試存儲(chǔ)過程;

調(diào)用存儲(chǔ)過程的方法:首先,在PL/SQL Developer左邊的Browser中選擇Procedures,查找需要調(diào)用的存儲(chǔ)過程;然后,選中調(diào)試的存儲(chǔ)過程,點(diǎn)擊右鍵,選擇Test,在彈 出來的Test scrīpt窗口中,對(duì)于定義為in類型的參數(shù),需要給該參數(shù)的Value輸入值;最后點(diǎn)擊上面的條數(shù)按鈕:Start debugger 或者按F9;最后點(diǎn)擊:RUN 或者Ctrl+R

 

 

3.5   導(dǎo)出數(shù)據(jù)到Excel表格后的文件位置:

C:\Users\Administrator\AppData\Local\Temp

 

如圖:

 

 

3.6   pl/sql developer debug

 

  連接數(shù)據(jù)庫后建立一個(gè)Test WINDOW

  在窗口輸入調(diào)用SP的代碼,F9開始debug,CTRL+N單步調(diào)試

 

 

 

3.7   調(diào)試觸發(fā)器

右擊我的電腦--電腦屬性--高級(jí)系統(tǒng)設(shè)置--環(huán)境變量。

找到變量名:NLS_LANG(沒有的話新建一個(gè),有的話點(diǎn)擊--編輯)。

將它的變量值改為:SIMPLIFIED CHINESE.ZHS16GBK

然后點(diǎn)擊--確定,重啟PLSQLOK

PLSQL Developer軟件使用大全 

3.9  
關(guān)聯(lián)oracle
官方文檔

【技巧】如何全文搜索oracle官方文檔:http://blog.itpub.net/26736162/viewspace-2065550/

 

http://wenku.baidu.com/view/412b6ac208a1284ac9504304.html

 

 

使用PLSQL Developer 來查看官方文檔

 

今天教大家使用PLSQL Developer來查看官方文檔,這個(gè)是非常方便的,相當(dāng)于聯(lián)機(jī)在線的搜索功能,大家看好了:

第1步 下載官方文檔到本地,并且解壓縮,這個(gè)就不多說了

 Oracle Server version 

File size 

Oracle 11.2 Library

408 MB

Oracle 11.1 Library

374 MB

Oracle 10.2 Library

446 MB

Oracle 10.1 Library

257 MB

Oracle 9.2 Library

209 MB

Oracle 9.0 Library

210 MB

 

 

 

 

 

 

 

 

 

 

 

 

 

 

第2步 打開plsql  developer,按F1,或者打開如下界面:

PLSQL Developer軟件使用大全 

 

第3步 輸入官方文檔的位置,點(diǎn)擊建立按鈕

 

不過,小麥苗現(xiàn)在基本上都使用離線的chm文件來搜索需要的內(nèi)容了,詳見http://blog.itpub.net/26736162/viewspace-2065550/

需要離線的chm文件的朋友可以去小麥苗的微云下載,地址為:http://blog.itpub.net/26736162/viewspace-1624453/

 

3.10  除去PL/SQL Developer打開時(shí)煩人的logon窗口

去除PL/SQL Developer打開時(shí)煩人的logon窗口

解決方法: 

1.首先如果你的PL/SQL Developer有修改過配置,先備份你的PLSQL配置和你的連接配置 

2.刪除C:\Users\登陸用戶\AppData\Roaming\PLSQL Developer下的Preferences文件夾 

3.重新打開后就會(huì)發(fā)現(xiàn)煩人的logon窗口就會(huì)消失了,但是連接配置也被清除了,所以切記 

保存之前的連接配置 

4.將你之前備份的配置重新導(dǎo)入即可

第四章 PLSQL Developer配置文件的路徑

11版本的plsql支持把配置文件導(dǎo)出后再導(dǎo)入了,這個(gè)功能很好。

 

現(xiàn)有功能簡要說明:

主菜單功能所有主菜單可在PL/SQL中設(shè)置工具欄按鈕,以方便調(diào)用

CnPlugin / Comment /&Commnet Lines “--”注釋當(dāng)前選中的代碼

CnPlugin / Comment /&Uncommnet Lines 去除當(dāng)前選中以“--”注釋的代碼

CnPlugin / &ReConnect 重連中斷的數(shù)據(jù)庫連接

CnPlugin / &ExPaste 對(duì)當(dāng)前選中或剪貼板內(nèi)空格式化為IN 字符串,如格式化字符串AA,BB,CC('AA','BB',CC')

CnPlugin / &ExCreate 建表時(shí)插入COMMENT的字段說明,CREATE TABLE tt(ID NUMBER --編號(hào));語句,除執(zhí)行當(dāng)前建表語句外,會(huì)自動(dòng)生成comment on column TT.ID is '編號(hào)'注釋語句

CnPlugin / Script / Load From MDB 以列表窗口形式讀取已保存在Access數(shù)據(jù)庫中的SQL語句

CnPlugin / Script / Save To MDB 保存當(dāng)前SQL語句至Access數(shù)據(jù)庫

CnPlugin / Script / Save As To MDB 另存為當(dāng)前SQL語句至Access數(shù)據(jù)庫

CnPlugin / Toggle Read Only 設(shè)置/取消設(shè)置當(dāng)前SQL窗口為直讀。

CnPlugin / Find All... 對(duì)當(dāng)前窗口容空查找指定的字符串,列出全部匹配內(nèi)容,支持正則表達(dá)式查找

CnPlugin / &Preferences CnPlugin插件屬性設(shè)置窗口

CnPlugin / &About' CnPlugin關(guān)于窗口右鍵菜單功能

Query data using alias 以字段注釋字符作為字段名拼出查詢SQL語句(選中表名出現(xiàn))

Open in new SQL Window 復(fù)制當(dāng)前窗口選中的SQL語句到新窗口中(選中字符串是出現(xiàn))

Execute in new SQL Window 復(fù)制當(dāng)前窗口選中的SQL語句到新窗口中并執(zhí)行語句(選中字符串是出現(xiàn))

Generate Word Documentation 導(dǎo)出當(dāng)前表結(jié)構(gòu)內(nèi)容至Word文檔(選中表名出現(xiàn))

無菜單功能

快捷鍵輸入功能:如輸入s空格,帶出'select * from ',支持光標(biāo)定位登錄時(shí)打開或執(zhí)行指定SQL文件

 

我常用的功能是Expaste功能,這個(gè)功能能把復(fù)制的文本自動(dòng)添加單引號(hào),這個(gè)功能非常實(shí)用。

執(zhí)行expaste粘貼后:

 

PL/SQL Developer啟動(dòng)時(shí)報(bào)錯(cuò):

"Control 'dxDockBrowserPanel' has no parent window"

 

出現(xiàn)原因:某次剛打開PL/SQL Developer 8.0.4,界面還沒有加載的時(shí)候,機(jī)器死機(jī)了,然后強(qiáng)行重啟,再打開PL/SQL Developer就報(bào)錯(cuò).

嘗試過的辦法:

1.重裝PL/SQL Developer7.1.5/8.0.2/8.0.4/9.0.2等多個(gè)版本均出現(xiàn)該問題;

2.系統(tǒng)還原也無效.

3.刪除C:\Users\用戶名\AppData\Roaming\PLSQL Developer的配置文件無效.

解決辦法:

刪除注冊(cè)表中的

HKEY_CURRENT_USER\Software\Allround Automations\PL/SQL Developer\Docking

也有可能是Docking1、Docking2Docking3......

這種東西全刪掉就好了,然后打開OK

 

 

6.2  不支持64

PLSQL Developer連接不上Win7 64位系統(tǒng)下安裝的Oracle11g64位的解決辦法

 

由于在本機(jī)Win7X64上安裝了64位的Oracle,結(jié)果試圖使用PLSQL Developer去訪問它的時(shí)候,報(bào)告說無法加載oci.dll文件。原來oci.dll64位的,32位應(yīng)用程序PLSQL Developer自然無法加載了。

這個(gè)問題目前有3種解決辦法

6.2.1  辦法一,網(wǎng)上的通用辦法

 

1)安裝Oracle 11g 64

2)安裝32位的Oracle客戶端( instantclient-basic-nt-11.2.0.2.0

 

下載instantclient-basic-nt-11.2.0.2.0.zip (一定得是32位的,不要下錯(cuò)了版本,Oracle官網(wǎng)有下載),將其解壓至Oracle安裝目錄的Product下(里面默認(rèn)的文件夾名為:instantclient_11_2):D:\app\yeohcooller\product\instantclient_11_2。

 

拷貝數(shù)據(jù)庫安裝根目錄下的一個(gè)目錄D:\app\yeohcooller\product\11.2.0\dbhome_1\NETWORKOracle客戶端目錄下D:\app\yeohcooller\product\instantclient_11_2(其實(shí)只需要 NETWORK\ADMIN\tnsnames.ora

 

3)安裝PL/SQL Developer

 

安裝 PL/SQL Developer,在perference->Connection里面設(shè)置OCI LibraryOracle_Home,例如本機(jī)設(shè)置為:

 

Oracle Home D:\app\yeohcooller\product\instantclient_11_2

 

OCI Library D:\app\yeohcooller\product\instantclient_11_2\oci.dll  

接下來這步可選。

 

設(shè)置環(huán)境變量(修改PATHTNS_ADMIN環(huán)境變量)

 

對(duì)于NLS_LANG環(huán)境變量, 最好設(shè)置成和數(shù)據(jù)庫端一致, 首先從數(shù)據(jù)庫端查詢字符集信息:

  SQL> select userenv('language') nls_lang from dual;

  NLS_LANG

  ----------------------------------------------------

SIMPLIFIED CHINESE_CHINA.ZHS16GBK

 

右擊"我的電腦" - "屬性" - "高級(jí)" - "環(huán)境變量" - "系統(tǒng)環(huán)境變量":

  1>.選擇"Path" - 點(diǎn)擊"編輯", "D:\app\yeohcooller\product\instantclient_11_2;" 加入;

  2>.點(diǎn)擊"新建", 變量名設(shè)置為"TNS_ADMIN", 變量值設(shè)置為"D:\app\yeohcooller\product\instantclient_11_2;", 點(diǎn)擊"確定";

  3>.點(diǎn)擊"新建", 變量名設(shè)置為"NLS_LANG", 變量值設(shè)置為"SIMPLIFIED CHINESE_CHINA.ZHS16GBK", 點(diǎn)擊"確定";

  最后點(diǎn)擊"確定"退出.

這里需要注意oracle 的安裝目錄中不能包含空格

 

 

6.2.2  我自己的辦法(1)--批處理

我自己解決的時(shí)候其實(shí)沒有這么麻煩:

1.下載instantclient-basic-nt-11.2.0.2.0(高版本也行,但是必須是32位的)到任意目錄,目錄不能含有空格

2.在客戶端目錄中新建一個(gè)批處理文件,文件內(nèi)容如下代碼所示,這里要把plsqldev的快捷方式加載到該目錄下,或者把該批處理文件加載到plsql developer 目錄中也行,以后直接運(yùn)行該批處理文件就可以了

@echo off

set path=D:\instantclient_12_1

set ORACLE_HOME=D:\instantclient_12_1

set TNS_ADMIN=C:\app\oracle\product\12.1.0\dbhome_1\NETWORK\ADMIN

set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

start D:\instantclient_12_1\plsqldev

Windows  環(huán)境下有的時(shí)候需要設(shè)置ORACLE_HOME 的變量

 

6.2.3  我自己的辦法(2) 強(qiáng)烈推薦 --下載小麥苗定制版的pl/sql developer

在小麥苗云盤里下載PLSQL Developer_all_lhr_new.zip文件,解壓文件后,設(shè)置環(huán)境變量后即可使用(設(shè)置方法在里邊已經(jīng)提供),無需安裝,綠色版。

注意:不需要單獨(dú)下載instantclient文件,小麥苗的定制版里邊已經(jīng)包含了客戶端工具,包含sqlplus、sqlldr、exp、tnsping等工具,非常實(shí)用。

 

6.2.4  我自己的辦法(3--下載64位的版本

下載64位的 PL/SQL Developer

 

小麥苗的云盤有下載。http://blog.itpub.net/26736162/viewspace-1624453/

 

 

6.3  連接時(shí)數(shù)據(jù)庫角色不能選擇

如下,如果角色不能選擇的話,可能是OCI配置的問題:

 

 

配置里邊是否合適?如下是我的配置:

D:\Program files\app\oracle\product\11.2.0.1\dbhome_1

D:\Program files\app\oracle\product\11.2.0.1\dbhome_1\bin\oci.dll

 

6.4  數(shù)據(jù)庫連接符tns不能選擇

該問題雖然不影響登錄,但是始終覺得欠缺點(diǎn)什么東西:

錯(cuò)誤登錄界面:

 

正確界面:

 

解決辦法:

設(shè)置TNS_ADMIN,查看系統(tǒng)環(huán)境變量是不是設(shè)置了TNS_ADMIN變量,且變量的值是到目錄名:

如下,正常的有錯(cuò)誤窗口:

 

而下邊的存儲(chǔ)過程沒有錯(cuò)誤窗口:

 

原因:其實(shí)很明顯了,就是存儲(chǔ)過程的名稱后邊的小括號(hào)應(yīng)該使用英文的,而不應(yīng)該使用中文括號(hào)。





About Me

...............................................................................................................................

本文作者:小麥苗,只專注于數(shù)據(jù)庫的技術(shù),更注重技術(shù)的運(yùn)用

本文在itpub(http://blog.itpub.net/26736162)、博客園(http://www.cnblogs.com/lhrbest)和個(gè)人微信公眾號(hào)(xiaomaimiaolhr)上有同步更新

本文itpub地址:http://blog.itpub.net/26736162/viewspace-2134628/

本文博客園地址:http://www.cnblogs.com/lhrbest/articles/6493218.html

本文pdf小麥苗云盤地址:http://blog.itpub.net/26736162/viewspace-1624453/

● QQ群:230161599     微信群:私聊

聯(lián)系我請(qǐng)加QQ好友(642808185),注明添加緣由

2016-11-28 10:00 ~ 2017-03-02 24:00泰興公寓完成

文章內(nèi)容來源于小麥苗的學(xué)習(xí)筆記,部分整理自網(wǎng)絡(luò),若有侵權(quán)或不當(dāng)之處還請(qǐng)諒解

版權(quán)所有,歡迎分享本文,轉(zhuǎn)載請(qǐng)保留出處

...............................................................................................................................

拿起手機(jī)使用微信客戶端掃描下邊的左邊圖片來關(guān)注小麥苗的微信公眾號(hào):xiaomaimiaolhr,掃描右邊的二維碼加入小麥苗的QQ群,學(xué)習(xí)最實(shí)用的數(shù)據(jù)庫技術(shù)。

PLSQL Developer軟件使用大全PLSQL Developer軟件使用大全

 PLSQL Developer軟件使用大全  PLSQL Developer軟件使用大全

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI