Oacle 페이지 저장 프로 세 스 Oacle 저장 프로 세 스 인 스 턴 스

2175 단어 저장 프로시저

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestPage {

 public TestPage() {
 }
 public static void main(String[] args) {
  String driver = "oracle.jdbc.driver.OracleDriver";
  String strUrl = "jdbc:oracle:thin:@localhost:1521:xmgl";
  String username = "xmgl";
  String password = "xmgl";
  Statement stmt = null;
  ResultSet rs = null;
  Connection conn = null;
  try {
   Class.forName(driver);
   conn = DriverManager.getConnection(strUrl, username, password);
   System.out.println("ok");
   CallableStatement cs = null;
   // CallableStatement
   cs = conn.prepareCall("{call page.fenye(?,?,?,?,?,?)}");
   cs.setString(1, "mytest");//
   cs.setInt(2, 3);//
   cs.setInt(3, 1);//
   // ,
   cs.registerOutParameter(4,oracle.jdbc.OracleTypes.INTEGER);
   //
   cs.registerOutParameter(5,oracle.jdbc.OracleTypes.INTEGER);
   //
   cs.registerOutParameter(6,oracle.jdbc.OracleTypes.CURSOR);
   cs.execute();
   // / ,getInt(4) 4,
   int rowNum=cs.getInt(4);//
   int pageCount = cs.getInt(5);
   rs=(ResultSet)cs.getObject(6);

   System.out.println("rowNum="+rowNum);
   System.out.println(" ="+pageCount);
   while (rs.next()) {
    System.out.println(" :"+rs.getInt(1)+" :"+rs.getString(2)+" :"+rs.getString(3));
   }
  } catch (SQLException ex2) {
   ex2.printStackTrace();
  } catch (Exception ex2) {
   ex2.printStackTrace();
  } finally {
   try {
    if (rs != null) {
     rs.close();
     if (stmt != null) {
      stmt.close();
     }
     if (conn != null) {
      conn.close();
     }
    }
   } catch (SQLException ex1) {
   }
  }
 }
}

좋은 웹페이지 즐겨찾기