當前位置:首頁 » 存儲配置 » oracleplsql調用存儲過程

oracleplsql調用存儲過程

發布時間: 2024-08-28 03:02:52

A. oracle調用存儲過程,call和exec有什麼區別

oracle 中調用存儲過程可以用exec,或begin……end,但無法使用call。

但exec只可以在命令行下執行,如sqlplus下或plsql的命令窗口下執行,但begin……end可以用第三方工具或命令行下執行。

如圖:

命令下執行:

B. 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;

C. 怎麼用ORACLE PLSQL匿名塊調用存儲過程

begin
core_acct_compare(參數1,參數2,參數3,參數4);
end;

begin ... end; 就是所謂的匿名塊

D. pl/sql調用存儲過程不成功,求解決(oracle 10)

你的存儲過程就有問題吧。我的資料庫也是Oracle 10的,創建過程時報錯,select中沒有into子語。過程改好的話,調用是可以的。第一種的時候加括弧 CALL procere_test()

E. oracle如何在sql執行帶參存儲過程語句

你的倒數2個參數: rtncode 、rtnmess都是out類型的參數,都需要帶回值來的。


out類型的參數,用常量進行調用,當然出錯了。


這樣試試:

declare
vcodeint;
vmessvarchar2(200);
begin
p_yjqr_mz_new('1','2','3',to_date('2014-08-01','yyyy-mm-dd'),'5',6,vcode,vmess);
dbms_output.put_line(vcode);
dbms_output.put_line(vmess);
end;

F. 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>

熱點內容
安卓機關機如何設置快捷方式 發布:2024-11-25 04:16:02 瀏覽:635
安卓綠聯和倍思哪個品牌好 發布:2024-11-25 03:54:45 瀏覽:889
androidpack 發布:2024-11-25 03:53:17 瀏覽:445
阿里雲sql 發布:2024-11-25 03:53:15 瀏覽:713
伺服器為什麼一段時間就連不上 發布:2024-11-25 03:44:36 瀏覽:768
圖片上下FTP是什麼 發布:2024-11-25 03:43:18 瀏覽:759
微服務無狀態存儲管理 發布:2024-11-25 03:34:43 瀏覽:22
行上傳 發布:2024-11-25 03:33:07 瀏覽:484
催款訪問 發布:2024-11-25 03:33:06 瀏覽:999
dhcp伺服器無法連接ip地址 發布:2024-11-25 03:23:09 瀏覽:949