包用于在逻辑上组合过程和函数,它由包规范和包体两部分组成
成都创新互联公司是一家专注于网站设计制作、成都做网站与策划设计,陈仓网站建设哪家好?成都创新互联公司做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:陈仓等地区。陈仓做网站价格咨询:13518219792
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);
1、在SQL语句中直接调用,如:\x0d\x0aselect sysdate from dual;\x0d\x0a\x0d\x0a2、在PL/SQL代码中赋值给某个变量,如:\x0d\x0adeclare\x0d\x0a dt date :=null;\x0d\x0abegin\x0d\x0a dt := sysdate;\x0d\x0a ...\x0d\x0aend;\x0d\x0a/\x0d\x0a\x0d\x0a3、以上说的是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);
1、首先打开电脑,点击进入浏览器。
2、其次点击搜索oracle,选择第一个进入,点击选择数据化,选择复制的包,点击使用。
3、最后点击确认即可。