当前位置: 代码迷 >> SQL >> 6.plsql的历程
  详细解决方案

6.plsql的历程

热度:322   发布时间:2016-05-05 09:35:35.0
6.plsql的过程

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

?

  相关解决方案