前言: 包(package)的主要作用是用于逻辑组合相关的pl/sql类型,比如记录类型或者集合类型,pl/sql游标或者游标声明以及pl/sql子程序,还可以包含任何可以在块的声明区中定义的变量。一旦创建了一个包,包就会被存储在Oracle数据库中。可以将包放到共享池中,以便被多个应用程序共享和调用。一个pl/sql包包括包规范和包体两部分。平时调试经常使用的dbms_output就是oracle的一个系统包。

一>一个简单的包的包规范和包体小例子create or replace package emp_pkg as

-----定义集合类型

type emp_tab is table of emp%rowtype index by binary_integer;

-----在包规范中定义一个记录类型

type emprectyp is record(emp_no number,sal number);

----定义一个游标申明

cursor desc_salary return emp;

----定义雇佣员工的过程

procedure hire_employee(p_empno number,p_ename varchar2,p_job varchar2,p_mgr number,p_sal number,p_comm number,p_deptno number);

-----定义解雇员工的过程

procedure fire_employee(p_emp_id number);

end emp_pkg;

create or replace package body emp_pkg

as

-----定义游标申明的游标体

cursor desc_salary return emp is select * from emp order by sal desc;

-----定义雇佣员工的具体实现

procedure hire_employee(p_empno number,p_ename varchar2,p_job varchar2,p_mgr number,p_sal number,p_comm number,p_deptno number) is

begin

insert into emp (empno) values('3360');

end;

----定义解雇员工的具体实现

procedure fire_employee(p_emp_id number) is

begin

----从emp表中删除员工信息

delete from emp where empno=p_emp_id;

end;

end emp_pkg;

二>dbms_job包创建定时任务使用

create table t(

id varchar2(30),

name varchar2(30)

);

create or replace procedure proce_t is

begin

insert into t(id, name) values('1', to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss'));

commit;

end proce_t;

/

declare

jobno number;

begin

dbms_job.submit(jobno,'proce_t;',sysdate,'sysdate+1/24/60');

commit;

end;

select * from user_jobs;

select * from t;

dbms_java 包不存在_Oracle的sql开发之包技术实战相关推荐

  1. 安卓开发的深度技术实战详解

    文章目录 一.安卓开发的深度技术 二.总结 三.协程 四.数据库 总结 一.安卓开发的深度技术 Kotlin 语言 Kotlin 语言是一种功能强大.安全.简洁且互操作性良好的编程语言,由 JetBr ...

  2. Oracle的sql开发之包技术实战

    前言: 包(package)的主要作用是用于逻辑组合相关的pl/sql类型,比如记录类型或者集合类型,pl/sql游标或者游标声明以及pl/sql子程序,还可以包含任何可以在块的声明区中定义的变量.一 ...

  3. 【MDCC 2016】iOS开发峰会回顾:实战Coding演示 技术大牛带你起飞

    9月23日-24日,由CSDN.创新工场联合主办的MDCC 2016中国移动开发者大会(Mobile Developer Conference China)在北京·国家会议中心隆重举行.本次大会以移动 ...

  4. 金仓数据库KingbaseES数据库开发指南(4. 面向应用程序的PL/SQL开发)

    目录 4.1. PL/SQL子程序和包的编写 ¶ 4.1.1. PL/SQL 子程序概述 ¶ 4.1.2. PL/SQL 包概述 ¶ 4.1.3. PL/SQL 单元概述 ¶ 4.1.4. 创建 PL ...

  5. Java开发常用包、接口和类

    一.JDK中常用包 1.java.lang 这个是系统的基础类: 2.java.io 这里面是所有输入输出有关的类,比如文件操作等: 3.java.nio 为了完善 io 包中的功能,提高 io 包中 ...

  6. python笔记6 模块与包 程序开发规范 包 re sys time os模块

    模块与包 python 模块首引用加载到内存,如果再次引用此模块,直接从内存中读取. python文件分为:执行文件(解释器运行的文件),被引用文件(import) 模块引用一共发生了3件事: 1.他 ...

  7. 二十三、oracle pl/sql分类三 包

    包用于在逻辑上组合过程和函数,它由包规范和包体两部分组成. 1).我们可以使用create package命令来创建包,如: i.创建一个包sp_package ii.声明该包有一个过程update_ ...

  8. oracle表结构修改回滚,87.Oracle数据库SQL开发之 修改表内存——数据库事务的提交和回滚...

    87.Oracle数据库SQL开发之 修改表内存--数据库事务的提交和回滚 数据库事务(transaction)就是一组SQL语句,这组SQL语句时一个逻辑工作单元. 要永久性的记录事务中SQL语句的 ...

  9. 【Flutter】开发 Flutter 包和插件 ( 开发 Dart 插件包 | 发布 Dart 插件包 )

    文章目录 前言 一.开发 Dart 包内容 二.配置 pubspec.yaml 三.编写 Dart 包使用说明 四.编写 Dart 包授权许可 五.设置版本变更记录 六.验证 Dart 包正确性 七. ...

  10. 常用的PL/SQL开发原则 by dbsanke

    在微博上看到dbsnake 有一个培训,因为是在北京举办的,过去不.所以问dbsnake 能否把相关的文档传我一份. dbsnake 邮件给我时说有些东西没有写到文档里. 这个文档也是dbsnake ...

最新文章

  1. Lucene 基础知识
  2. nyoj - 947(Max Xor)字典树
  3. 客户端网络库实现真的很简单吗?
  4. 基于CDS view自动生成的OData服务,是如何实现read操作的
  5. css cursor url用法格式详解
  6. 学习 | MongoDB 索引和排序
  7. 用 as with ,和 ROW_NUMBER() 做分页查询
  8. Python抓取2500份招聘需求,数据显示未来最吃香的岗位是这个
  9. PLC模糊控制之模糊化
  10. 提升办公效率——工具篇
  11. 魅族Android版本,魅族Flyme安卓版本
  12. 音频(三)音色与spectrum 频谱图
  13. 中国工程院院士倪光南:大数据产业安全和发展需同步
  14. 论文阅读:(NIPS 2021)NeRV: Neural Representations for Videos
  15. 书论20 袁昂《古今书评》
  16. 【矩阵论】矩阵的相似标准型(3)
  17. 技术经营:下一个掘金地
  18. 查询国际学术会议的信息
  19. 汇编:shl, shr 逻辑移动指令
  20. 美国虚拟PSTN号码

热门文章

  1. 信号识别 matlab库,EEG信号MATLAB分析平台设计 ——模式识别部分
  2. mysql redis binlog_基于binlog的canal到redis的同步
  3. 从0到1:饿了么大数据平台Hadoop集群规模突破1000+之炼金术
  4. leetcode 11 Contain with most water
  5. struts2标签库使用小结
  6. 给“大学生IT博客大赛”参赛博主的一封信
  7. 关于添加文件删除权限
  8. cisco用户隔离配置
  9. mysql 存储过程 后面慢_MySQL存储过程执行慢
  10. Deepin 的远程连接