博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自己做的常用的oracle增刪改查存儲過程 。。。。。。。。。。。。。
阅读量:4977 次
发布时间:2019-06-12

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

 

ExpandedBlockStart.gif
代码
--
--創建增刪改查的包
CREATE
 
OR
 
REPLACE
 package  TESTPACKAGE 
IS
TYPE mycursor 
IS
 REF 
CURSOR
;
type mycursorid 
is
 ref 
cursor
;
type mycursorLike 
is
 ref 
cursor
--
-模糊查詢
type mycursor1 
is
 ref 
cursor
--
多條件查詢
PROCEDURE
 updateRecords(v_first_name 
in
 tb1.first_name
%
type,v_name 
in
 tb1.name
%
type);
PROCEDURE
 deleteRecords(v_first_name 
in
 tb1.first_name
%
type);
procedure
 selectRecords(ref_cursor out mycursor);
procedure
 insertRecords(v_name 
in
 tb1.name
%
type);
procedure
 selectByIdRecords(v_first_name 
in
 tb1.first_name
%
type,ref_cursorid out mycursorid);
procedure
 selectAllByNameRecords(ref_likecursor out mycursorLike,v_name 
in
 tb1.name
%
type);
procedure
 selectTbTest(ref_cur out mycursor1,i_name 
in
  tb_test.name
%
type, i_sex  
in
  tb_test.sex
%
type, i_age  
in
  tb_test.age
%
type);
END
 TESTPACKAGE;
--
創建增刪改查的包體
CREATE
 
OR
 
REPLACE
 package body  TESTPACKAGE 
IS
--
修改的
PROCEDURE
 updateRecords(v_first_name 
in
 tb1.first_name
%
type,v_name 
in
 tb1.name
%
type)
is
begin
update
 tb1 
set
 name
=
v_name 
where
 first_name
=
v_first_name;
end
 updateRecords;
--
查詢的
PROCEDURE
 selectRecords(ref_cursor out mycursor)
IS
BEGIN
 
OPEN
 ref_cursor 
for
 
select
 
*
 
from
 tb1;
END
 selectRecords;
--
刪除的
procedure
 deleteRecords(v_first_name 
in
 tb1.first_name
%
type)
is
begin
delete
 
from
 tb1 
where
 first_name
=
v_first_name;
end
 deleteRecords;
--
增加的
procedure
 insertRecords(v_name 
in
 tb1.name
%
type)
is
begin
 
insert
 
into
 tb1(first_name,name) 
values
(squ_cg_test.nextval,v_name);
end
 insertRecords;
--
根據id查找該條信息
procedure
 selectByIdRecords(v_first_name 
in
 tb1.first_name
%
type,ref_cursorid out mycursorid)
is
begin
open
 ref_cursorid 
for
 
select
 
*
 
from
 tb1 
where
 first_name
=
v_first_name;
end
 selectByIdRecords;
--
模糊查詢
procedure
 selectAllByNameRecords(ref_likecursor out mycursorLike,v_name 
in
 tb1.name
%
type)
is
begin
open
 ref_likecursor 
for
 
select
 
*
 
from
 tb1 
where
 name 
like
 v_name
||
'
%
'
;
end
 selectAllByNameRecords;
--
多條件查詢模糊查詢
procedure
 selectTbTest(
 ref_cur out mycursor1,
 i_name 
in
  tb_test.name
%
type,
  i_sex  
in
  tb_test.sex
%
type,
  i_age  
in
  tb_test.age
%
type
)
is
begin
open
 ref_cur 
for
 
select
 
*
 
from
 tb_test
where
 ( name 
like
 
'
%
'
||
i_name
||
'
%
'
 
or
 i_name 
is
 
null
)
and
 ( sex  
=
 i_sex  
or
 i_sex 
is
 
null
)
and
 ( age  
=
 i_age  
or
 i_age 
is
 
null
);
end
 selectTbTest;
end
 TESTPACKAGE;
 

 

 

转载于:https://www.cnblogs.com/xiachufeng/archive/2010/07/30/1788897.html

你可能感兴趣的文章
java解答:有17个人围成一圈(编号0~16),从第0号的人开始从1报数,凡报到3的倍数的人离开圈子,然后再数下去,直到最后只剩下一个人为止,问此人原来的位置是多少号?...
查看>>
Java多线程
查看>>
10亿美元融资腾讯跟头,Grail要用基因测序做癌症早期筛查
查看>>
Python GIL(Global Interpreter Lock)
查看>>
matlab 卷积公式与矩阵实现
查看>>
javascript 提取表单元素生成用于提交的对象(序列化 html 表单)
查看>>
学习Javascript闭包
查看>>
jmeter接口测试----5学生金币充值
查看>>
15-基础-路由-vue-router-to 属性赋值
查看>>
红黑树
查看>>
bzoj4031: [HEOI2015]小Z的房间
查看>>
android开机引导界面的几种实现
查看>>
vue组件-使用插槽分发内容(slot)
查看>>
[转]不使用中间变量,交换两个数值变量的值
查看>>
javascript 正则表达式之分组与前瞻匹配详解
查看>>
移动端问题总纲
查看>>
mysql数据库乱码解决方法之一
查看>>
kali-简单渗透笔记
查看>>
NPOI导出为Excel文件
查看>>
Javascript 笔记(4)----继承与原型链
查看>>