存储过程用于执行特定的操作,当建立存储过程时,既可以指定输入参数(in),也可以指定输出参数(out),通过在过程中使用输入参数,可以将数据传递到执行部分;通过使用输出参数,可以将执行部分的数据传递到应用环境。在sqlplus中可以使用create procedure命令来建立过程。
实例如下:
1.请考虑编写一个存储过程,可以输入雇员名,新工资,用来修改雇员的工资

--根据雇员名去修改工资
CREATE PROCEDURE sp_update(uname VARCHAR2, newsal NUMBER) IS
BEGIN
update emp set sal=newsal where ename=uname;
END;
/

2.如何调用存储过程有两种方法:exec、call

--使用exec调用存储过程
SQL> exec sp_update('zhangsan', 888);
SQL> commit;

3.如何在java程序中调用一个存储过程

package junit.test;

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager; /**
* 演示java程序调用oracle的存储过程案例
*
* @author jiqinlin
*
*/
public class ProcedureTest { public static void main(String[] args) { try {
// 1.加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
// 2.得到连接
Connection ct = DriverManager.getConnection(
"jdbc:oracle:thin:@127.0.0.1:1521:orcl", "scott", "oracle"); // 3.创建CallableStatement
CallableStatement cs = ct.prepareCall("{call sp_update(?,?)}");
// 4.给?赋值
cs.setString(1, "SMITH");
cs.setInt(2, 4444);
// 5.执行
cs.execute();
// 关闭
cs.close();
ct.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

参见:http://www.cnblogs.com/linjiqin/archive/2012/02/23/2365429.html

最新文章

  1. asp.net使用Get请求webservice
  2. springMVC 拦截器如何做登录检查及页面跳转
  3. quick lua 3.3常用方法和学习技巧之transition.lua
  4. wireshark怎么抓包、wireshark抓包详细图文教程
  5. java se基础
  6. 修改sqlplus提示符
  7. rnqoj-73-展演队型-dp
  8. Mac 登录界面多了一个其它账户删除
  9. json解析的函数eval_r() 和 JSON.parse()
  10. redhat6 + 11G RAC 双节点部署
  11. 单页应用跳转ui-view,$stateProvider,$urlRouterProvider
  12. Centos7搭建FTP服务器
  13. 安卓开发:简单的登陆跳转_APK实现直接跳转到本CSDN博客
  14. C# 关于X86/X64/AnyCpu 的关系
  15. python url参数转dict
  16. gradle构建项目失败:Unzipping /home/.gradle/wrapper/dists/gradle-3.3-all/55gk2rcmfc6p2dg9u9ohc3hw9/gradle-3.3-all.zip to /home/.gradle/wrapper/dists/gradle-3.3-all/55gk2rcmfc6p2dg9u9ohc3hw9
  17. 痞子衡嵌入式:恩智浦半导体全系无线(BLE, Zigbee, Thread, 2.4G, Sub-1G)微控制器芯片一览
  18. 蓝牙协议分析(11)_BLE安全机制之SM
  19. PAT甲题题解-1063. Set Similarity (25)-set的使用
  20. springboot启动太慢优化

热门文章

  1. 再起航,我的学习笔记之JavaScript设计模式15(组合模式)
  2. Flink从Kafka 0.8中读取多个Topic时的问题
  3. C/C++资料网站
  4. MongoDB聚合
  5. Linux平台 Oracle 12cR2 RAC安装Part3:DB安装
  6. 开始学习.net的第二天
  7. Git和Github简单教程(收藏)
  8. 转:【深入Java虚拟机】之三:类初始化
  9. 团队作业4——第一次项目冲刺(Alpha版本)4.26
  10. 201521123018 《Java程序设计》第2周学习总结