当前位置:首页 » 编程软件 » 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;

热点内容
津贴脚本 发布:2025-02-06 19:44:10 浏览:739
好分数里如何修改密码 发布:2025-02-06 19:42:30 浏览:155
mysql存储过程判断 发布:2025-02-06 19:40:15 浏览:853
bat编译器的作用 发布:2025-02-06 19:26:54 浏览:343
phpajaxsession 发布:2025-02-06 19:20:56 浏览:623
西安java学习 发布:2025-02-06 19:15:44 浏览:623
微信电影源码网站 发布:2025-02-06 18:55:21 浏览:934
本地建mysql数据库 发布:2025-02-06 18:54:23 浏览:762
屏幕看不清了如何输密码 发布:2025-02-06 18:51:14 浏览:333
手机开脚本买个什么配置的 发布:2025-02-06 18:45:59 浏览:113