oracle教程:不带传出参数的存储过程创建及JDBC调用

语法介绍

1、存储过程实际上就是供应用程序调用的一种数据函数对象。
2、存储函数与存储过程的区别:存储函数一般用来select查询,且返回的只有一个值,存储过程只能供应用程序调用可以返回多个值。且存储过程没有return返回值,可以通过参数设置一个或者多个返回值。
3、语法:

CREATE [ OR REPLACE ] PROCEDURE 存储过程名称
(参数名 类型, 参数名 类型, 参数名 类型)
IS|AS
变量声明部分;
BEGIN
逻辑部分
[EXCEPTION
异常处理部分]
END;
参数只指定类型,不指定长度
过程参数的三种模式:
IN 传入参数(默认)
OUT 传出参数 ,主要用于返回程序运行结果
IN OUT 传入传出参数

不带传出参数的存储过程创建及调用

要点:
1、根据例子理解如何创建一个不带传出参数的存储过程。
2、根据例子理解如果用Oracle调用存储过程。

--创建业主序列起始值为11
create sequence seq_owners start with 11;

--不带传出参数的存储过程
create or replace procedure pro_owners_add
(
v_name varchar2,--名称
v_addressid number,--地址编号
v_housenumber varchar2,--门牌号
v_watermeter varchar2,--水表号
v_ownertype number--业主类型
)
is
begin
  insert into t_owners values(seq_owners.nextval,v_name,v_addressid,v_housenumber,v_watermeter,sysdate,v_ownertype);
  commit;
end;

--调用不带传出参数的存储过程
--第一种方式
call pro_owners_add('马大哈',2,'3232','22333',1);
--第二种方式
begin
  pro_owners_add('马2哈',2,'32312','223331',1);
end;

JDBC调用不带传出参数的存储过程

要点:通过jdbc代码调用存储过程注意调用存储过程使用CallableStatement,sql语句中要用“{call 存储过程名称(?,?,…)}”。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/a772304419/article/details/132479645