过程
过程用于执行特定的操作。当建立过程时,既可以指定输入参数(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(); } }}
?