存储过程

来源:互联网 发布:库存数据分析ppt案例 编辑:程序博客网 时间:2024/06/01 09:59

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;

public class PageCallTest {
 // 调用一个无返回值的过程

 public static void main(String[] args) {
  try {
   Class.forName("oracle.jdbc.driver.OracleDriver");
   Connection conn = DriverManager.getConnection(
     "jdbc:oracle:thin:@127.0.0.1:1521:orcl", "scott", "tiger");
   /*CallableStatement cs = conn.prepareCall({"call sp_pro7(?,?,?)"});
   cs.setInt(1,10);
   cs.setString(2, "笑傲江湖");
   cs.setString(3, "人民出版社");*/
   //看看如何調用有返回值的存儲過程
   CallableStatement cs = conn.prepareCall("{call sp_pro8(?,?)}");
   cs.setInt(1, 7788);
   //給第二個?賦值
   cs.registerOutParameter(2, oracle.jdbc.OracleTypes.VARCHAR);
   cs.execute();
   //取出返回值,要注意?的順序
   String name = cs.getString(2);
   System.out.println("7788的名字:" + name);
   cs.close();
   conn.close();
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

}