SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

JAVA Servlet、JSP + Oracle9i 編3 - JDBC、パラメタ、prepareStatement

■パラメタによるレコード修正(JSP)

  ・PreparedStatement では、ADO 等のパラメタクエリのようなことができる。
    上手に使用すれば、レスポンスをかなり上げることが可能だろう。

<%@ 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 = "update テストm set データ1 = ?, データ2 = ? where キー = ?";
  Connection cn = null;
  PreparedStatement 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>");
  }

  // オートコミット解除
  try {
    cn.setAutoCommit(false);
  } catch (Exception e) {
    out.println("<P>オートコミット解除エラー<BR>" + e.toString() + "</P>");
  }

  // Oracle9i JDBC パラメタステートメント作成
  try {
    st = cn.prepareStatement(sql);
  } catch (Exception e) {
    out.println("<P>JDBC パラメタステートメント作成エラー<BR>" + e.toString() + "</P>");
  }

  // Oracle9i JDBC パラメタによるレコード修正1
  try {
    int ct = 0;
    st.setLong(1, 111);
    st.setLong(2, 222);
    st.setString(3, "a001");
    ct = st.executeUpdate();
    cn.commit();
    // Oracle9i 更新件数表示
    out.println("<P>レコード修正1 count = " + ct + "</P>");
  } catch (Exception e) {
    out.println("<P>JDBC パラメタによるレコード修正1 エラー<BR>" + e.toString() + "</P>");
  }

  // Oracle9i JDBC パラメタによるレコード修正2
  try {
    int ct = 0;
    st.setInt(1, 1000);
    st.setInt(2, 2000);
    st.setString(3, "b002");
    ct = st.executeUpdate();
    cn.commit();
    // Oracle9i 更新件数表示
    out.println("<P>レコード修正2 count = " + ct + "</P>");
  } catch (Exception e) {
    out.println("<P>JDBC パラメタによるレコード修正2 エラー<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 編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2017 Y.SAK