博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
程序包+创建包规范+创建包体+删除程序包
阅读量:5901 次
发布时间:2019-06-19

本文共 1293 字,大约阅读时间需要 4 分钟。

程序包

1作用是为了实程序模块化
2程序包里面可以包含存储过程,函数,变量,游标等PL/SQL程序
3程序包类似java的jar包,存储过程,函数,变量,游标等相当jar包提供的方法
4调用程序包里面的存储过程,函数等元素时,oracle会把程序包调入内存,下次是使用,直接从内存读取。
5程序包组成
1)包规范:列出程序包可用的存储过程,函数,游标等元素条目(不含实际代码),这些元素条目属于公有项目,可以供所有数据库用户访问
2)包体:包含元素的实际代码,同时也可以在包体中创建包规范中没有提到的项目,
那么这些项目属于私有项目,只能在包体中使用.

创建包规范

语法
create 【or replace】package package_name
{is | as }
package_specification;
end package_name;

package_name:包名

package_specification:列出用户可以使用的公有项目(存储过程,函数,类型和对象)

举例

create or replace package tool_package
as
function sum_function(a in number default 0,b in number default 0) return number;
procedure update_student2(no in varchar2,name in varchar2) ;
end tool_package;
这里写图片描述

创建包体

create 【or replace】package body package_name

{is | as }
package_body;
end package_name;

package_name:创建包规范时指定的包名

举例

create or replace package body tool_package

as
/* 存储过程update_student2*/
procedure update_student2(no in varchar2,name in varchar2)
as
begin
update student2 set sname=name where sno=no;
end update_student2;

/* 函数sum_function*/

function sum_function(a in number default 0,b in number default 0)
return number
as
ssum number(10):=0;
begin
ssum:=(a+b);
return ssum;
end sum_function ;
end tool_package;
这里写图片描述

程序包的调用

这里写图片描述

这里写图片描述

这里写图片描述

删除程序包

语法
drop package package_name
举例
drop package tool_package;
这里写图片描述

转载于:https://www.cnblogs.com/feiZhou/p/9344323.html

你可能感兴趣的文章
笑谈Android图表-MPAndroidChart
查看>>
【Linux】编辑文件时,箭头按键还有BACKSPACE按键不能正常使用的解决办法
查看>>
Python算术运算符
查看>>
Markdown 语法的简要规则
查看>>
敏捷项目管理实践
查看>>
Codeforces 550D. Regular Bridge 构造
查看>>
golang 跨平台编译——go 在windows上编译Linux平台的程序(Cross Compilation from Windows to Linux/Ubuntu)...
查看>>
完美解决EditText和ScrollView的滚动冲突(上)
查看>>
使用逆波兰式进行表达式求值
查看>>
用Reflector for .NET反编译dll文件(.net),把整个dll导出个cs插件
查看>>
Java Callable 与 Future
查看>>
<html>
查看>>
多线程的死锁
查看>>
各种排序算法时间复杂度和空间复杂度表
查看>>
go config
查看>>
Linux中Cache内存占用过高解决办法
查看>>
【Python】合并(拼接)字符串
查看>>
[Mysql]——通过例子理解事务的4种隔离级别(转)
查看>>
ADOQuery.Parameters: Property Parameters does not exist
查看>>
Win8 Metro(C#)数字图像处理--2.36角点检测算法
查看>>