java调用Oracle中的存储过程与存储函数
Posted cat_fish
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java调用Oracle中的存储过程与存储函数相关的知识,希望对你有一定的参考价值。
1 //调用存储过程 2 public static void testPro(){ 3 String driver = "oracle.jdbc.OracleDriver"; 4 String url = "jdbc:oracle:thin:@localhost:1521:orcl"; 5 Connection conn = null; 6 CallableStatement cs = null; 7 8 try { 9 Class.forName(driver); 10 conn = DriverManager.getConnection(url, "scott", "tiger"); 11 cs = conn.prepareCall("{call countyearsal(?,?)}"); 12 cs.setInt(1, 7369); 13 //注册oracle输出参数的类型 14 cs.registerOutParameter(2, OracleTypes.NUMBER); 15 cs.execute(); 16 int ysal = cs.getInt(2); 17 System.out.println(ysal); 18 } catch (Exception e) { 19 e.printStackTrace(); 20 }finally { 21 try { 22 if(cs != null){ 23 cs.close(); 24 } 25 if(conn != null){ 26 conn.close(); 27 } 28 } catch (SQLException e) { 29 e.printStackTrace(); 30 } 31 } 32 } 33 //调用存储函数 34 public static void testFun(){ 35 String driver = "oracle.jdbc.OracleDriver"; 36 String url = "jdbc:oracle:thin:@localhost:1521:orcl"; 37 Connection conn = null; 38 CallableStatement cs = null; 39 40 try { 41 Class.forName(driver); 42 conn = DriverManager.getConnection(url, "scott", "tiger"); 43 cs = conn.prepareCall("{?=call countysal(?)}"); 44 cs.setInt(2, 7369); 45 //注册oracle输出参数的类型 46 cs.registerOutParameter(1, OracleTypes.NUMBER); 47 cs.execute(); 48 int ysal = cs.getInt(1); 49 System.out.println(ysal); 50 } catch (Exception e) { 51 e.printStackTrace(); 52 }finally { 53 try { 54 if(cs != null){ 55 cs.close(); 56 } 57 if(conn != null){ 58 conn.close(); 59 } 60 } catch (SQLException e) { 61 e.printStackTrace(); 62 } 63 } 64 }
以上是关于java调用Oracle中的存储过程与存储函数的主要内容,如果未能解决你的问题,请参考以下文章
mysql 与oracle中的存储过程及函数有啥区别,尽可能详细哦