含义:将可以在java中执行的代码通过PL/SQL语言在数据库中操作
语法:
create or replace PROCEDURE name
[(parameter,...)]
IS
--声明变量
BEGIN
pl/sql_block;
EXCEPTION
…………….
END ;---创建一个存储过程(拿到一个用户的名称)
create or replace proceduregetName(name out varchar2 ) is
begin
select first_name into name fromemployees where employee_id=100;
end getName ;----集成jdbc
1.加载oracle的驱动包
2.先创建测试类test
//加载Oracle的驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//设计连接
Connection connection = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "itsource", "itsource");
//准备好要执行的存储过程(注意语法,传的参数个数)
CallableStatement call = connection.prepareCall("{call proc_delEmp(?)}");
call.setLong(1, 106); //第一个位置输入值
call.executeUpdate(); //执行存储过程
connection.close();
call.close();
3.数据库中新建一个存储过程
create or replace procedure getEmpNameById(id in number,name out varchar2) is
begin
select first_name into name from emp where employee_id = id;
end getEmpNameById;