过程
过程用于执行特定的操作。当建立过程时,既可以指定输入参数(in),也可以指定输出参数(out)。通过在过程中使用输入参数,可以将数据传递到执行部分;通过使用输出参数,可以将执行部分的数据传递到应用环境。在sqlplus中可以使用create procedure命令来建立过程。
实例如下:
1.编写一个过程,可以输入雇员名,新工资 可以修改雇员的工资
SQL> create procedure sun_pro3(sunName varchar2,newSal number) is
2 begin
3 --执行部分,根据用户名去修改工资
4 update kkkk set sal=newSal where ename=sunName;
5 end;
6 /
Procedure created
调用存储过程
SQL> exec sun_pro3('SCOTT',4958);
PL/SQL procedure successfully completed
2.如何调用过程?
两种方法:call和exec + 过程名,区别就在于,要是没有参数,exec + 过程名 call + 过程名()
3.如何在java程序中调用一个存储过程?
package comSun;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
//演示 如何使用jdbc_odbc桥连接方式
public class TestOra {
public static void main(String[] args) {
try {
//加载驱动
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//得到连接
//第一个""里面的是配置源,第二个""的是ORACLE用户名,第三个""的是用户名的密码
//其中第一个""里的配置源需要在控制面板里的管理工具里的ODBC管理器来建立数据源来匹配
Connection ct = DriverManager.getConnection("jdbc:odbc:testsp","scott","tiger");
//从下面开始和mysql 一模一样
Statement sm = ct.createStatement();
ResultSet rs = sm.executeQuery("select * from emp");
while(rs.next())
{
//获取数据库中的用户名
System.out.println("用户名:"+rs.getString(2));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}