當前位置:首頁 » 存儲配置 » oracle執行存儲過程plsql

oracle執行存儲過程plsql

發布時間: 2023-05-26 00:55:54

⑴ 請問oracle怎麼執行存儲過程

我試驗過了,就是exec 存儲過程名或者execute 存儲過程名(參數),請你在仔細確認一下,你的存儲過程名寫沒寫對呀,或者你沒有進入sqlplus中?

----
以上,希望對你能有幫助。

⑵ Oracle資料庫job,調用存儲過程,PLSQL工具執行後,沒有報錯,但是也沒有任何效果,哪位大神幫忙分析一下

SQL> create or replace procere test_jobproce as
2
3 begin
4
5 insert into test_job values(sysdate);
6
7 end test_jobproce;
8
9 /

警告: 創建的過程帶有編譯錯誤。

SQL> show errors;
PROCEDURE TEST_JOBPROCE 出現錯誤:

LINE/COL ERROR
-------- -----------------------------------------------------------------
5/1 PL/SQL: SQL Statement ignored
5/13 PL/SQL: ORA-00942: 表或視圖不存在
SQL> create table test_job (t1 date);

表已創建。

SQL> create or replace procere test_jobproce as
2
3 begin
4
5 insert into test_job values(sysdate);
6
7 end test_jobproce;
8 /

過程已創建。

SQL> declare test_job_really number;
2 begin
3 dbms_job.submit(test_job_really,'test_jobproce;',sysdate,'sysdate+1/1440')

4 commit;
5 end;
6 /

PL/SQL 過程已成功完成。

SQL> rpitn :test_job_really;
SP2-0734: 未知的命令開頭 "rpitn :tes..." - 忽略了剩餘的行。
SQL> print :test_job_really;
SP2-0552: 未聲明綁定變數 "TEST_JOB_REALLY"。
SQL> desc dba_jobs;
名稱 是否為空? 類型
----------------------------------------- -------- ---------------------------

JOB NOT NULL NUMBER
LOG_USER NOT NULL VARCHAR2(30)
PRIV_USER NOT NULL VARCHAR2(30)
SCHEMA_USER NOT NULL VARCHAR2(30)
LAST_DATE DATE
LAST_SEC VARCHAR2(8)
THIS_DATE DATE
THIS_SEC VARCHAR2(8)
NEXT_DATE NOT NULL DATE
NEXT_SEC VARCHAR2(8)
TOTAL_TIME NUMBER
BROKEN VARCHAR2(1)
INTERVAL NOT NULL VARCHAR2(200)
FAILURES NUMBER
WHAT VARCHAR2(4000)
NLS_ENV VARCHAR2(4000)
MISC_ENV RAW(32)
INSTANCE NUMBER

SQL> select job ,what from dba_jobs;

JOB
----------
WHAT
-------------------------------------------------------------------------------

4001
wwv_flow_cache.purge_sessions(p_purge_sess_older_then_hrs => 24);

4002
wwv_flow_mail.push_queue(wwv_flow_platform.get_preference('SMTP_HOST_ADDRESS'),

wv_flow_platform.get_preference('SMTP_HOST_PORT'));

3
test_jobproce;

JOB
----------
WHAT
-------------------------------------------------------------------------------

SQL> exec dbms_job.run(3);

PL/SQL 過程已成功完成。

SQL> select * from test_job
2 ;

T1
--------------
05-3月 -14
05-3月 -14

SQL> /

T1
--------------
05-3月 -14
05-3月 -14

SQL> /

T1
--------------
05-3月 -14
05-3月 -14

SQL> /

T1
--------------
05-3月 -14
05-3月 -14

SQL> exec dbms_job.run(3);

PL/SQL 過程已成功完成。

SQL> /

T1
--------------
05-3月 -14
05-3月 -14
05-3月 -14

SQL> /

T1
--------------
05-3月 -14
05-3月 -14
05-3月 -14

SQL> exec dbms_job.run(3);

PL/SQL 過程已成功完成。

SQL> /

T1
--------------
05-3月 -14
05-3月 -14
05-3月 -14
05-3月 -14

SQL>

⑶ oracle sql窗口下怎麼執行存儲過程

直接
exec 存儲過程
即可。

如果你問的是plsql developer 工具中的 sql window ,它是無法執行存儲過程的,只能新建一個command window 。

⑷ oracle plsql怎麼調試存儲過程

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

⑸ PL_sql如何執行oracle存儲過程

要成功執行這個存儲過程,你需要注意幾點:
1.select * from ods_area; 不能直接在pl/sql 中作為語句執行。
應該用 select 欄位 into plsql變數 from 表名;
的形式來獲取表中的數據,保存到plsql變數中。

2. 存儲過程的語法格式為:
create or replace procere area
is
--變數聲明;
begin
--過程主體;
end area;
3. 如果存儲過程代碼無誤,可以通過 "/" 來執行代碼,編譯存儲過程。
4.通過exec 或 execute 來調用編譯後的存儲過程。

例如:

-- 創建procere:
create or replace procere area
is
num number ;
v_areaRecord al%ROWTYPE;
begin
--例子1
select * into v_areaRecord from al;
--例子2
select 12345 into num from al;
end area;
/
-- 通過 / 執行;

--調用
exec area;

⑹ oracle 在pl/sql 工具中怎麼運行一個存儲過程

1、登錄到指定的資料庫,然後左側列表找到proceres。

3、點齒輪運行,然後輸入參數運行,如果沒有參數,直接運行就可以。

⑺ oracle sql/plus中執行存儲過程

因為有輸出參數,所以只能通過declare塊執行,如下:

declare
聲明變數,就是CodeType 、input_code、cu_patient ,可對前兩個直接賦值
begin
GetSampleInfo(CodeType, input_code,cu_patient) ;
end;
/

----
多動動手!如果沒輸出參數可以直接"exec 過程名(參數)"調用,否則就按我說的做,自己往裡添加代碼就行

⑻ Oracle存儲過程執行報錯:無效的sql語句。 在plsql中: execute proc_test_exit_when;

在pl sql 中要用command window(命令窗口)來執行這個存儲過程,不能在sql window中直接執行的

⑼ 如何利用BAT文件登陸OracleSql並執行多個sql腳本PLSQL語句

首先,做一個簡單的sql文件(log.sql)。

在這個SQL文件中我們創建了一個表。

接下來,我們來建一個bat批處理文件(log.bat)。

在這個bat文件裡面我們調用絕對路徑的sql文件,並將執行過程及結果輸出到log.txt文件中。

最後,我們運行bat文件,執行多個sql腳本plsql語句。

⑽ oracle中怎麼在plsql中調用存儲過程

打開set
serveroutput
on還需要有輸出內容才可以顯示。
如,有以下存儲過程:
create or replace procere p_test
as
v_begintime varchar2(20);
v_endtime varchar2(20);
v_str varchar2(10);
begin
v_begintime:=to_char(sysdate,'yyyy-mm-dd hh24:mi:ss');
select 'badkano' into v_str from al;
v_endtime:=to_char(sysdate,'yyyy-mm-dd hh24:mi:ss');
dbms_output.put_line('開始時間為:'||v_begintime);
dbms_output.put_line('結束時間為:'||v_endtime);
end;執行:
其中後邊紅框輸入,就是set
serveroutput
on的輸出內容。

熱點內容
linux編譯是什麼 發布:2024-04-22 20:18:41 瀏覽:609
c感知哈希演算法 發布:2024-04-22 20:08:29 瀏覽:301
手機能訪問國外的軟體 發布:2024-04-22 20:03:25 瀏覽:265
linux腳本後台執行 發布:2024-04-22 20:03:11 瀏覽:170
大話西遊數據編譯 發布:2024-04-22 19:59:05 瀏覽:85
夜神雲伺服器 發布:2024-04-22 19:48:45 瀏覽:749
c語言中整除符號 發布:2024-04-22 19:44:36 瀏覽:696
蘋果平板和安卓手機哪個用久了 發布:2024-04-22 19:28:33 瀏覽:802
cmdiso解壓 發布:2024-04-22 19:13:49 瀏覽:507
提前還貸演算法 發布:2024-04-22 18:55:50 瀏覽:320