包用于在逻辑上组合过程和函数,它由包规范和包体两部分组成
创新互联公司专业为企业提供兴隆网站建设、兴隆做网站、兴隆网站设计、兴隆网站制作等企业网站建设、网页设计与制作、兴隆企业网站模板建站服务,十余年兴隆做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
1.创建包
--创建一个包sp_package
create package sp_package is
--声明该包有一个过程和函数,(没有实现)
procedure update_sal(name varchar2,newsal number);
function annual_nicome(name varchar2) return number;
end;
--创建包体(用于实现已经声明的函数和过程)
create package body sp_package is
procedure update_sal(name varchar2,newsal number)
is
BEGIN
UPDATE emp
SET sal = newsal
WHERE ename = name;
END;
function annual_income(name varchar2)
return number is
annual_salary number;
BEGIN
SELECT sal * 12 + Nvl(comm,0)
INTO annual_salary
FROM emp
WHERE ename = name;
RETURN annual_salary;
END;
end;
--调用包中的内容
exec sp_package.update_sal('name',number);
exec package.function(xx,xx...);
如果想执行整个,在包中编写一个调研所有函数或存储的主存储,然后你调研主存储就可以了。
oracle提供包功能本身不具备调研所有函数或存储的功能,只是将函数、存储、变量以包的形式管理。
方法一: exec procedure_name; execute procedure_name; 方法二: call procedure_name; 方法三: begin execute procedure_name;end; end;
在CMD中,通过exp命令将所需的用户或表,导入到dmp文件中,这样写:
exp 用户名/密码@数据库名 tables=(tab1,tab2,tab3) file=D:\abc.dmp
这是将登录用户下的tab1、tab2、tab3导出到D:\abc.dmp中。
是oracle9i吗?
你先建个文件夹 把三个文件解压放在里面 分别取名 disk1 disk2 disk3(按照顺序) 注意 不要再放别的东西
然后注意看disk1的auto...那个文件(安装信息文件) 里面有setup=... 找到这个文件点击安装
注意你文件路径不要出现任何中文。
在存储过程或函数里调用oracle包的话,首先要有执行这个包的权限;如果包属于其他的用户(不是系统包),调用时:用户名.包名.存储过程(参数)名或者 变量:=用户名.包名.函数(参数);因为函数有返回值,变量类型要跟函数返回值的类型一致。