SAK 図書館
JAVA Servlet、JSP + Oracle9i 編4 - JDBC、ストアド呼び出し、prepareCall
■ストアド呼び出し(JSP) ・CallableStatement で、Oracle のストアドを呼び出すことができる。 手法的には ADO や oo4o と大差ないと思う。 ・registerOutParameter の java.sql.Types.???? は、次のとおり。 VARCHAR String SMALLINT short BIGINT long REAL float DOUBLE double NUMRIC jaja.sql.Numeric BIT Boolean TINYINT byte VARBINARY byte[] DATE java.sql.Date TIME java.sql.Time TIMESTAMP java.sql.Timestamp <%@ page import="java.util.*,java.sql.*;" contentType="text/html; charset=Shift_JIS"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <TITLE>JAVA Server Page(JSP) - Oracle9i JDBC Test</TITLE> </HEAD> <BODY> <P>JAVA Server Page(JSP) - Oracle9i JDBC Test</P> <% String drv = "oracle.jdbc.OracleDriver"; String dsn = "jdbc:oracle:thin:@localhost:1521:sak"; String sql = "{? = call data2notnull(?, ?)}"; Connection cn = null; CallableStatement st = null; // Oracle9i JDBC ドライバロード try { Class.forName(drv); } catch (Exception e) { out.println("<P>JDBC ドライバロードエラー<BR>" + e.toString() + "</P>"); } // Oracle9i JDBC 接続 try { cn = DriverManager.getConnection(dsn, "sak", "sak"); } catch (Exception e) { out.println("<P>JDBC 接続エラー<BR>" + e.toString() + "</P>"); } // Oracle9i ストアド呼び出し SQL 作成 try { st = cn.prepareCall(sql); st.registerOutParameter(1, java.sql.Types.BIGINT); } catch (Exception e) { out.println("<P>JDBC ストアド呼び出し SQL 作成エラー<BR>" + e.toString() + "</P>"); } // Oracle9i JDBC PL/SQL ストアド呼び出し try { st.setLong(2, 123); st.setLong(3, 456); st.execute(); out.println("<P>ストアド戻り値 = " + st.getString(1) + "</P>"); } catch (Exception e) { out.println("<P>JDBC PL/SQL ストアド呼び出しエラー<BR>" + e.toString() + "</P>"); } // Oracle9i JDBC ステートメントクローズ try { st.close(); } catch (Exception e) {} // Oracle9i JDBC 接続クローズ try { cn.close(); } catch (Exception e) {} %> </BODY> </HTML> ■JAVA Servlet、JSP + Oracle9i 編資料
■JAVA Servlet、JSP + PostgreSQL 編資料
■JAVA Servlet、JSP 基礎編資料
■PostgreSQL 編、JAVA Servlet、JSP 編資料
■MySQL 編資料
■SQL 基礎編資料
■SQL 基礎実地編資料
■SQL チューニング編資料
■Oracle PL/SQL 編資料