今回実現させる出力結果
削除に成功した時に出力される画面
削除ができない(削除するデータが存在しない)時に出力される画面
ソースコードを直接書かないコード
<%@ page contentType="text/html; charset=UTF-8" %> <%-- JDBC API のインポート--%> <%@ page import="java.sql.*" %> <%@ page import="javax.naming.InitialContext" %> <%@ page import="javax.sql.DataSource" %> <%request.setCharacterEncoding("UTF-8"); //実行する SQL 文 String strsql = "select * from DEPT"; String strsql2 = "delete from DEPT where DEPTNO=40"; //DB接続オブジェクト Connection db = null; //命令を管理するオブジェクト Statement st = null; //結果セットオブジェクト ResultSet rs = null; try{ InitialContext ic = new InitialContext(); DataSource ds = (DataSource)ic.lookup("java:/comp/env/jdbc/my_dbedu"); //DBへの接続処理 db = ds.getConnection(); out.println("ドライバのロード OK <br>"); out.println("DBへの接続 OK <br>"); //SQLを命令するためのオブジェクト生成 st = db.createStatement(); //delete文の実行 int reccnt = st.executeUpdate(strsql2); //結果セットの作成 (SELECT 文の実行) rs = st.executeQuery(strsql); %> <html> <head> <title>Oracle 接続テスト </title> </head> <body> <h2>SELECT文の実行 </h2> 実行した文 (delete) →→<%= strsql2 %><hr> 実行した文 (select) →→<%= strsql %><hr> <%=reccnt %>件のデータを削除しました。 <table><tr><th>NO</th><th>氏名 </th><th>住所</th></tr> <% while(rs.next()){ %> <tr><td><%= rs.getInt("DEPTNO") %></td> <td><%= rs.getString("DNAME") %></td> <td><%= rs.getString("LOC") %></td></tr> <% } %> </table><hr> </body> </html> <% } catch(Exception e){ out.println("エラーです"); e.printStackTrace(); }finally{ try{ //Statementオブジェクトの開放 if(st != null){ st.close(); out.println("Statement 開放 OK <br>"); } if(db != null){ db.close(); out.println("切断 OK <br>"); } }catch(Exception e){ e.printStackTrace(); } } %>
ソースコードを直接書く方法
<%@ page contentType="text/html; charset=UTF-8" <% JDBC API のインポート%> <%@ page import="java.sql.*" %> <% // 接続情報 String DBDriver = " com.mysql.jdbc.Driver"; String DBUrl = " jdbc:mysql://localhost:3306/××××"; //意図的に伏せています String DBUser = "root"; String DBPassword = "××××"; //意図的に伏せています //実行する SQL 文 String strsql = "select * from DEPT"; String strsql2 = "delete from DEP T where DEPTNO=40"; //DB接続オブジェクト Connection con = null; //命令を管理するオブジェクト Statement st = null; //結果セットオブジェクト ResultSet rs = null; try{ //ドライバクラスのロード Class.forName (DBDriver); out.println("ドライバのロード OK <br>"); //DBへの接続処理 con = DriverManager.getConnection(DBUrl,DBUser,DBPassword); out.println("DBへの接続 OK <br>"); //SQL を命令するためのオブジェクト生成 st = con.createStatement(); //delete文の実行 int reccnt = st.executeUpdate(strsql2); //結果セットの作成 (SELECT 文の実行 rs = st.executeQuery(strsql); %> <html> <head> <title>Oracle 接続テスト </title> </head> <body> <h2>SELECT文の実行 </2> 実行した文 (delete) →→<%= strsql2 %>< 実行した文 (select) →→<%= strsql %>< <%=reccnt %>件のデータを削除しました。 <table><tr><th>NO</th><th>氏名 </th><th>住所 </th></tr> <% while(rs.next()){ <tr><td><%= rs.getInt("DEPTNO") %></td> <td><%= rs.getString("DNAME") %></td> <td><%= rs.getString("LOC") %></td></tr> <% } %> </table><hr> </body> </html> <% } catch(Exception e){ out.println("エラーです"); e.printStackTrace(); }finally{ try{ //Statementオブジェクトの開放 if(st != null){ st.close(); out.println("Statement 開放 OK <br>"); } if(con != null){ con.close(); out.println("切断 OK <br>"); } }catch(Exception e){ e.printStackTrace(); } } %>
コメント