當前位置:首頁 » 編程軟體 » oracle編譯package

oracle編譯package

發布時間: 2022-07-22 06:49:09

Ⅰ oracle裡面的包(package) 有什麼用啊

簡單說,就是將oracle里的一部分procere等object 組織起來,完全是為了方便代碼程序的管理,完全不使用package也是可以的,只是那樣的話,代碼多了不易管理

Ⅱ oracle如何批量編譯包體

sql">alterpackageusername.xxxxcompilebody;

語法如上

Ⅲ oracle package(包)是什麼有什麼用處

package就是用來封裝過程,函數用的。
一個package可以存放多個過程,函數。
調用是:
包名.過程名1
包名.過程名2

樓上解釋很形象~

Ⅳ ORACLE 過程編譯錯誤,高手來解答!

憑感覺,你的語法沒錯。今天連不起公司伺服器。周一連上給你試試,等著。。

我們創建的時候,用的是create or replace package。我將你包的內容改變了(因為我沒有創建你的那個數據表emp),運行成功了的。內容如下:

create or replace package xxemp_pkg is

procere update_sal(name varchar2,newsal number);

function annual_income(name varchar2) return number;

end;
/
create or replace package body xxemp_pkg is
procere update_sal(name varchar2,newsal number)
is
begin
/*update emp set sal=newsal
where lower(ename)=lower(name);*/null;
end;
function annual_income(name varchar2) return number
is
annual_salary number(7,2);
begin
/*select sal*12+nvl(comm,0) into annual_salary
from emp where lower(ename)=lower(name);*/null;
return annual_salary;
end;
end;
/
你再到你的系統試一試。

Ⅳ oracle 編譯包的時候,一直提示正在編譯

編譯的存儲過程的時候,程序死住,等待一會出現ora-04021錯誤解決辦法:

1.可能被鎖住

查看v$lockedselect b.sid,b.serial#,b.machine,b.terminal,b.program,b.process,b.status from v$lock a , v$session b

where a.SID = b.SID

得到死鎖session的SID,SERIAL#參看這個是否為你自己用戶下的,然後kill掉session

2.可能被掛起

查看v$session_waitselect b.serial#,a.* from v$session_wait a,v$session
bwhere a.sid = b.sid得到等待的session的sid和serial#3.查看dba_ddl_locksselect
session_id sid, owner, name, type,

mode_held held, mode_requested request

from dba_ddl_locks
where name = '&your_package_name'

Ⅵ oracle 如何執行package

exec package.function(xx,xx...);
如果想執行整個,在包中編寫一個調研所有函數或存儲的主存儲,然後你調研主存儲就可以了。

oracle提供包功能本身不具備調研所有函數或存儲的功能,只是將函數、存儲、變數以包的形式管理。

Ⅶ oracle 創建存儲過程報錯, PACKAGE BODY SCOTT.EMP_SAL_MANAGEMENT 編譯錯誤

子程序或游標 'P_P_BONUS' 已在程序包說明中聲明, 必須在程序包體中對其進行定義。意思是你已經聲明了這個存儲過程P_P_BONUS,但是沒有在包體(PACKAGE BODY )中定義,就是你還需要在包體中定義P_P_Bonus的實現部分

Ⅷ 如何重編譯ORACLE資料庫的無效對象

如果無效對象的數量很少,那麼你可以逐個編譯這些對象.

ALTER PACKAGE my_package COMPILE;
ALTER PACKAGE my_package COMPILE BODY;
ALTER PROCEDURE my_procere COMPILE;
ALTER FUNCTION my_function COMPILE;
ALTER TRIGGER my_trigger COMPILE;
ALTER VIEW my_view COMPILE;

Ⅸ Oracle中的package 怎麼用

先create package,在裡面聲明procere

然後再create package body,在package body裡面編寫procere的代碼即可(相當於create procere)。

包里沒有create procere

示例如下:

CREATE OR REPLACE PACKAGE pkg_test IS
PROCEDURE pro_test(V_OLD IN VARCHAR2,V_NEW IN VARCHAR2);
...
END test;
/

CREATE OR REPLACE PACKAGE BODY pkg_test IS
...

PROCEDURE pro_test(V_OLD IN VARCHAR2,V_NEW IN VARCHAR2) IS
BEGIN
...
END;

...
END pkg_test;

熱點內容
音樂appftp安卓 發布:2025-03-20 19:03:24 瀏覽:304
家長申述驗證的密碼是什麼 發布:2025-03-20 18:55:27 瀏覽:7
編譯原理與技術第二版下載 發布:2025-03-20 18:55:26 瀏覽:936
怎麼寫編程語言 發布:2025-03-20 18:42:52 瀏覽:687
我去密碼是多少 發布:2025-03-20 18:12:28 瀏覽:541
方舟編譯器啥時候開始 發布:2025-03-20 18:11:40 瀏覽:958
常用java類 發布:2025-03-20 18:07:06 瀏覽:201
怎麼查看安卓大屏使用的什麼協議 發布:2025-03-20 18:03:07 瀏覽:704
好用的linux系統 發布:2025-03-20 17:51:15 瀏覽:648
n1網路存儲 發布:2025-03-20 17:51:11 瀏覽:634