當前位置:首頁 » 編程語言 » plsql調試sql

plsql調試sql

發布時間: 2023-01-02 17:40:32

『壹』 plsql存儲過程沒有test

PLSQL的debug
1:找到想要調試的存儲過程,右鍵單擊該存過,從彈出菜單中選擇「Test」項

2:單擊「Test」後,PL\SQL會打開調試界面,左上角有開始調試的按鈕,在調試之前要填寫存過的參數,下面是填寫參數的地方,如果有多個參數,會有多行參數框,按參數名填寫相應的參數即可。

3:填寫完參數,單擊開始調試按鈕後,調試的界面會發生一些變化。圖中分別是:
執行狀態,別人不能再編譯或者執行。
執行按鈕,單擊這個按鈕存過會執行完成或者遇到bug跳出,否則是不會停下來的,調試時不會用這個按鈕的。
單步執行,就是讓代碼一行一行的執行
跳出單步執行,等待下一個指令。

4:調試的時候,每一次單步執行的時候要記一下執行代碼的行數,如果過程單步執行到某行後,再單步執行的時候,存過就退出,那麼錯誤就在該行的下一行。

『貳』 PLSQL執行sql的幾種方法

plsql很方便我們執行sql。下面就簡單介紹我常用的幾種(當然每次svn的分支也可以ant腳本自動執行某個文件下的所以sql文件)首先打開plsq的命令窗口1)執行sql文件(可以把需要執行的sql放一個文件中)輸入@'' 在單引號中輸入sql文件的路徑既可,比如D:\db下的jbpm.oracle.sql文件,見下圖(sql文件內容是select * from system_menu r where r.menu_name='銷售訂單' ;) 2)導入dmp文件。導入dmp文件前先刪除對應的user(下面以test_user為例)drop user test_user cascade;
$ impdp system/test123@SYSTEM directory=data_pump_dir schemas=test_user mpfile=date.DMP REMAP_SCHEMA=test_user:test_userTABLE_EXISTS_ACTION=replace logfile=imp.log;
alter user test_user identified by 123456; 3)當需要重新從正式版資料庫到數據到測試版時,我們需要重啟測試版伺服器或者kill掉應用程序伺服器(比如tomcat)的session連接v$session 這張表可以查找到連接 oracle 資料庫的應用程序基本信息。因此可以通過該表來kill掉相應程序的session如果你想kill到連接到用戶 test_user ,可以執行下面的sql: select * from v$session r where r.USERNAME=『test_user』 ;然後kill對應的session'就行了,參考下面的截圖: 比如你要kill 第一條;就執行下面的sql : alter system kill session '21,77' ; //因為sid, serial#.這2列很唯一的。 下面補充一些連接oracle的應用程序信息和oracle 操作 session 情況。 1.查找到連接 oracle 資料庫的應用程序基本信息。 select sid, serial#,
username, --連接用戶名
program, --應用程序名
machine, --機器名
osuser, --操作系統用戶
logon_time --登錄時間
from v$session; 2.如何查看session級的等待事件?當我們對資料庫的性能進行調整時,一個最重要的參考指標就是系統等待事 件。$system_event,v$session_event,v$session_wait這三個視圖里記錄的就是系統級和session級的等待 事件,通過查詢這些視圖你可以發現資料庫的一些操作到底在等待什麼?是磁碟I/O,緩沖區忙,還是插鎖等等。通過如下sql你可以查詢你的每個應用程序到底在等待什麼,從而針對這些信息對資料庫的性能進行調整。
Select s.username,s.program,s.status,se.event,se.total_waits,se.total_timeouts,se.time_waited,se.average_wait
from v$session s, v$session_event se
Where s.sid=se.sid And se.event not like 'SQl*Net%' And s.status ='ACTIVE'And s.username is not null 3.oracle中查詢被鎖的表並釋放session SELECT A.OWNER,A.OBJECT_NAME,B.XIDUSN,B.XIDSLOT,B.XIDSQN,B.SESSION_ID,B.ORACLE_USERNAME, B.OS_USER_NAME,B.PROCESS, B.LOCKED_MODE, C.MACHINE,C.STATUS,C.SERVER,C.SID,C.SERIAL#,C.PROGRAM
FROM ALL_OBJECTS A,V$LOCKED_OBJECT B,SYS.GV_$SESSION C
WHERE ( A.OBJECT_ID = B.OBJECT_ID ) AND (B.PROCESS = C.PROCESS ) ORDER BY 1,2釋放session Sql:alter system killsession'sid,serial#'
alter systemkillsession'379,2'
alter systemkillsession'374,6938'4.查看佔用系統io較大的session SELECT se.sid,se.serial#,pr.SPID,se.username,se.status,se.terminal,se.program,se.MODULE,se.sql_address,st.event,st.p1text,si.physical_reads,si.block_changes
FROM v$session se, v$session_wait st,v$sess_io si,v$process pr
WHERE st.sid=se.sid AND st.sid=si.sid AND se.PADDR=pr.ADDR AND se.sid>6 AND st.wait_time=0 AND st.event NOT LIKE '%SQL%' ORDER BY physical_reads DESC5.找出耗cpu較多的session select a.sid,spid,status,substr(a.program,1,40) prog,a.terminal,osuser,value/60/100 value
from v$session a,v$process b,v$sesstat c
where c.statistic#=12 and c.sid=a.sid and a.paddr=b.addr order by value desc
6.另外oracle是否運行可以用sql語句查出:select status from v$instance;
其中,status可能返回三種值:open(資料庫打開),mount(資料庫已經載入,但還沒有打開),started(資料庫進程已經啟動,但是還沒有載入),這個數據字典可以在資料庫沒有打開的情況下查詢,但是需要用sys用戶執行。
反應時間,請求數需要具體說明到底是那個參數。你可以參考字典;v$status,v$session(看當前有多少個連接用戶等).

『叄』 oracle plsql怎麼調試存儲過程

1、首先是編寫存儲過程,編譯無誤;
2、添加debug信息。為了能夠單步跟蹤存儲過程,需要為其所在的包添加debug信息,右鍵點擊需要調試的存儲過程名稱,在彈出菜單中選中[add debug information],這樣就為包體添加了調試信息;
3、選擇需要調試的存儲過程名稱,點擊右鍵,在彈出菜單中 選擇[Test],進去測試窗口,測試窗口中有為了測試該存儲過程自動所產生的代碼,當然你也可以自己另外加入和修改代碼,自動生成的代碼已經足夠了。

『肆』 PLSQL如何調試存儲過程

在PL/SQL Developer中調用存儲過程的步驟如下:

1、首先,建立一個操作表,當然也可以用用戶界面去創建表。

『伍』 plsql如何使用

1、PL/SQL Developer記住登陸密碼
在使用PL/SQL Developer時,為了工作方便希望PL/SQL Developer記住登錄Oracle的用戶名和密碼;

設置方法:PL/SQL Developer 7.1.2 ->tools->Preferences->Oracle->Logon History , "Store history"是默認勾選的,勾上"Store with password" 即可,重新登錄在輸入一次密碼則記住了。

2、執行單條SQL語句
在使用PL/SQL Developer的SQL Window時,按F8鍵,PL/SQL Developer默認是執行該窗口的所有SQL語句,需要設置為滑鼠所在的那條SQL語句,即執行當前SQL語句;

設置方法:PL/SQL Developer 7.1.2 -->tools->Preferences-->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中選擇Proceres,查找需要調用的存儲過程;然後,選中調試的存儲過程,點擊右鍵,選擇Test,在彈出來的Test scrīpt窗口中,對於定義為in類型的參數,需要給該參數的Value輸入值;最後點擊上面的條數按鈕:Start debugger 或者按F9;最後點擊:RUN 或者Ctrl R

『陸』 在plsql上存儲過程怎麼調試,最好能給詳細過程謝謝

首先你的用戶得有存儲過程的debug執行許可權。然後在plsql的左側菜單中找到你的調試的package或function,打開後plsql右邊窗口是分兩列的,第一列是存儲過程的方法名,第二列窗口是存儲過程的具體源代碼。

在第一列的方法名上,右鍵可以看到有debug選項,點擊bug可以單獨對此方法進行調試,你可以在源代碼設置斷點,跟eclipse斷點功能近似。

親,記得採納哦!

『柒』 如何調試plsql代碼

plsqlDev調試功能是利用包dbms_debug包實現的, dbms_debug包的安裝,以sys用戶登錄後運行: sql @?/rdbms/admin/prvtpb.plb 在利用plsqlDevIDE做調試時,有時會發生失去響應 ,此時可執行 alter system flush shared_pool試試, 如果還不行,建議改用TOAD來調試 。plsqlDev在調試這一塊做的不完善。 關於調試許可權 Debug當前schema的過程,則必須給當前shema對應的用戶授如下許可權: 例如soctt要調試scott.myfunction 則以sys執行 grant debug connect session to SCOTT;Debug其它schema的過程,可以加 debug any procere許可權調試或是只針對單個被調試的過程授權 grant debug on 過程 to 調試用戶;特別注意:將存儲過程編譯成調試狀態,才可以執行單步調試。 示例:將函數DAY編譯成調試狀態: ALTER FUNCTION DAY COMPILE DEBUG 去除函數DAY的調試信息,執行 ALTER FUNCTION DAY COMPILE。 查看某對象是否處於調試狀態: SELECT DEBUGINFO FROM SYS.ALL_PROBE_OBJECTS PO WHERE PO.OWNER = 'DBO'

『捌』 如何用plsql查看存儲過程的源碼!!!

1、首先雙擊plsql圖標,進入登錄界面,輸入用戶名和密碼,輸送資料庫實例名。

2、點擊左上角new,並點擊sqlwindow,進入到資料庫界面。

3、該圖是資料庫存儲過程的簡單布局。有存儲過程的定義,包括輸入變數、輸出變數等,輸入變數以in定義,輸出以out定義;變數部分:可根據程序需求自行定義;數據處理邏輯部分:可加上增刪改差表的操作;異常處理部分:當程序執行異常時處理。

4、當一個存儲過程寫好之後,需要點擊左上角執行按鈕,或者快捷鍵F8,編譯通過後便可調試程序了。找到需要調試的存儲過程,右鍵點擊test進入到調試界面。

5、點擊左上角調試按鈕。

6、下圖標識區域,分別是調試按鈕,可以單步執行,可以跳過整段執行,也可以跳出。

『玖』 plsql怎麼使用求教程

PLSQL Developer是Oracle資料庫開發工具,很牛也很好用,PLSQL Developer功能很強大,可以做為集成調試器,有SQL窗口,命令窗口,對象瀏覽器和性能優化等功能,下面簡單的介紹一下如何使用PLSQL Developer工具,新手教程。
工具/原料PLSQL Developeroracle
基本操作1首先確保有oracle資料庫或者有oracle伺服器,然後才能使用PLSQL Developer連接資料庫。2啟動PLSQL Developer,登陸oracle用戶賬號後連接(這里不詳細介紹如何配置tnsname.ora)了。3登陸成功後即可進入對象瀏覽器窗口界面4在對象瀏覽器選擇「my object」,這里邊就是SCOTT(當前登陸的用戶的所有object)5找到table文件夾,里邊就是當前賬戶的所有表格END
查看錶格1選中需要查看的表——》右鍵——》選中「查詢數據」【query data】,即可看到數據了。END
SQL Window使用1新建——》選中sql window,即可打開sql窗口了2在sql窗口內輸入sql語句,全選,點擊執行即可查看到結果,功能很強大END
編輯表選中表——》右鍵——》Edit(編輯),可以對表進行編輯。

熱點內容
編譯歷史 發布:2025-07-04 18:23:01 瀏覽:850
空調壓縮機種類 發布:2025-07-04 18:13:58 瀏覽:242
中國有ip6伺服器嗎 發布:2025-07-04 17:58:56 瀏覽:725
第六章編譯原理答案 發布:2025-07-04 17:37:55 瀏覽:40
php內存優化 發布:2025-07-04 17:25:54 瀏覽:664
威綸觸摸屏如何設置時間限制密碼 發布:2025-07-04 17:25:50 瀏覽:418
python列表的遍歷 發布:2025-07-04 17:24:20 瀏覽:24
編譯基本塊 發布:2025-07-04 17:23:06 瀏覽:750
scl語言編程 發布:2025-07-04 17:23:05 瀏覽:993
oracle用戶連接資料庫連接 發布:2025-07-04 17:20:20 瀏覽:939