[英]Testing a function in PL/SQL Developer
這是我的功能:
FUNCTION GET(V_IN IN NUMBER) RETURN VARCHAR2 AS
V_OUT VARCHAR2(1000);
BEGIN
function body
END;
當我右鍵單擊該函數並單擊測試時,我得到以下信息:
begin
-- Call the function
:result := pkg.get(V_IN => :V_IN);
end;
如何用值代替此變量V_IN? 我需要測試一個數字,例如940。
當我嘗試代碼時:
declare
r varchar2(2000);
begin
-- Call the function
r := pkg.get(940);
end;
我收到一個錯誤:
ORA-01036: illegal variable name/number
您可以提出各種調用此函數的方法嗎?
PS:使用的工具:PL / SQL Developer Allround Automations。 版本8.0.1.1502
Oracle數據庫11g企業版
單擊函數並在上下文菜單中單擊“ Test
后,將顯示您所顯示的代碼的“測試”窗口。 該窗口中有兩個窗格-頂部窗格顯示PL / SQL Developer生成的用於調用該函數的代碼,下面的窗格包含該函數的參數列表。 在“測試”窗口的下部窗格中,該函數的參數列表包含三列-變量,類型和值。 在參數名稱的行的“值”列中輸入所需的值,然后單擊“啟動調試器”按鈕(“測試”窗口左上角的“測試腳本”選項卡名稱下),然后單擊“運行”按鈕(立即)在“啟動調試器”按鈕的右側)。
祝你好運。
“如何用值代替此變量V_IN?我”
在PLSQL Developer中運行測試時,測試窗口的底部窗格是所有替換變量的屬性列表。 您定義數據類型和輸入值(適當時)。 運行測試后,此窗口中將提供輸出值。
“ ORA-01036:非法變量名稱/編號”
不知道是什么原因造成的。 它可能不是PLSQL Developer,而是功能代碼中的錯誤(尚未發布)。
我能夠如下運行該功能:
declare
v varchar2(1000);
begin
select pkg.get(940) into v from dual;
dbms_output.put_line(v);
end;
另外,根據APC的評論,有一個屬性列表(PL / SQL工作表下方顯示的小窗口,具有Variable , Type和Value字段)。 您需要在值字段中輸入要傳遞的值,然后單擊執行(快捷鍵-F8)。 輸出將在同一屬性列表窗口中顯示並以黃色突出顯示。 單擊下面的鏈接以引用屏幕截圖:
當您將原始測試代碼修改為自定義代碼時,我假設您仍在pl / sql“測試窗口”中。 PL / SQL有時是錯誤的。 打開一個新的“ SQL窗口”,然后嘗試使用dbms_output.put_line()在此處運行以查看結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.