oracle如何调用包,oracle调用包中的存储过程

ORACLE包体中调用另一个包体的方法

包用于在逻辑上组合过程和函数,它由包规范和包体两部分组成

创新互联-专业网站定制、快速模板网站建设、高性价比桂林网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式桂林网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖桂林地区。费用合理售后完善,10余年实体公司更值得信赖。

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);

如何建立oracle包,如何调用包的过程或是函数

包用于在逻辑上组合过程和函数,它由包规范和包体两部分组成

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);

Oracle PLSQL怎么用调用函数包

pl/sql

里面定义的包在调用的时候使用exec

命令调用,例如:exec

package_name.过程名()

过程名():包体里面定义的公用过程。

不知道我的回答你清楚了吗?


分享文章:oracle如何调用包,oracle调用包中的存储过程
网址分享:http://scyanting.com/article/dsghceg.html