Oracle学习笔记(十一)
回顾
游标 --- 处理多行记录
存储过程
函数
ORACLE中的程序包
PACKAGE
用途: <1>模块化
<例子> --公司的员工的管理
1.增加一个员工
2.员工离职
用存储过程和函数来实现
1.增加一个员工
create sequence seq1 start with 7935;
create or replace function insert_emp(
enm emp.ename%type, --员工的名字
ejob varchar2, --职务
mgr number, --上级
ehiredate date,--参加工作时间
esal number, --工资
ecomm number, --津贴
dno number)
return number
as
a number;
begin
--工号来自序列
select seq1.nextval into a
from dual;
--增加了一个员工
insert into emp values (
a,enm,ejob,mgr,ehiredate,esal,ecomm,dno);
return a;
end;
2.员工离职
create or replace procedure remove_emp(eno emp.empno%type)
as
begin
delete from emp where empno = eno;
end;
把这2个功能设计成一个package(包)
包-- 说明部分 + 实现部分
建立说明部分:
create or replace package company_gl
as
--加员工
function insert_emp( enm emp.ename%type, --员工的名字
ejob varchar2, --职务
mgr number, --上级
ehiredate date,--参加工作时间
esal number, --工资
ecomm number, --津贴
dno number) return number;
--员工离职
procedure remove_emp(eno emp.empno%type);
end;
--实现部分
create or replace package body company_
相关文档:
本系列文章导航
[Oracle]高效的PL/SQL程序设计(一)--伪列ROWNUM使用技巧
[Oracle]高效的PL/SQL程序设计(二)--标量子查询
[Oracle]高效的PL/SQL程序设计(三)--Package的优点
[Oracle]高效的PL/SQL程序设计(四)--批量处理
[Oracle]高效的PL/SQL程序设计(五)--调用存储过程返回结果集
[Oracle]高效的PL/SQL程序设计(六)- ......
自己在做这个程序的时候看过很多的资料,上网也查了不少的资料,可是多半说的是出神入化,云里雾里...不光看了不明白,而且是有明白一点的人,看了也变的有些模糊了。
这里我掩饰一套完整的java jdbc 连接Oracle9i的范例。
package com.lxh.dbcon;//打包
import ......
SQLServer和Oracle的常用函数对比
1.绝对值
S:select abs(-1) value
O:select abs(-1) value from dual
2.取整(大)
S:select ceiling(-1.001) value
O:select ceil(-1.001) value from dual
3.取整(小)
S:select floor(-1.001) value
O:select floor(-1.001) valu ......
一 在Oracle中连接数据库
public class Test1 {
public static void main(String[] args) {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection(
&nbs ......