練習問題
3.4 練習問題
本章で習った内容を元に練習問題を解いてください。
問1 次の設問①~⑤について○か×で答えなさい。
設問
① MariaDBのオートコミット機能は初期状態では無効になっている。
② トランザクション処理中は、何度SQL文を実行してもデータには反映されない。
③ PreparedStatement を使う場合、SQLのパラメータ変数には「$」マークを使用する。
④ パラメータ変数に値をセットする場合、セットする値の型によってメソッドが異なる。
⑤ 基準となるSQLが複数ある場合、PreparedStatementは利用できない。
問2 次のソースコードの①~⑤の空欄に入るものを選択肢から選んで答えなさい。
選択肢
false sql commit() rollback() createStatement()
➢ Practice0301.java
1 | package jp.co.f1.jdbc.ch03exercise; |
5 | public class Practice0301 { |
6 | private static String RDB_DRIVE="org.mariadb.jdbc.Driver"; |
7 | private static String URL="jdbc:mariadb://localhost/practice_db"; |
8 | private static String USER="root"; |
9 | private static String PASSWD="root123"; |
11 | public static void main(String[] args) { |
15 | Connection con = null; |
19 | Class.forName(RDB_DRIVE); |
20 | con = DriverManager.getConnection(URL,USER,PASSWD); |
22 | con.setAutoCommit( ① ); |
26 | sql = "DELETE FROM practice_table WHERE id = "00001"; |
27 | num = smt.executeUpdate( ③ ); |
28 | System.out.println("\nSQL発行:" + num + "件のレコードを削除しました。"); |
30 | System.out.println("\nコミット処理を実施しました。"); |
33 | } catch (Exception e) { |
34 | System.out.println("JDBCデータベース接続エラー" + e); |
37 | System.out.println("\nロールバック処理を実施しました。"); |
39 | } catch (SQLException ignore) { |
50 | } catch (SQLException ignore) { |
問3 次のソースコードの①~④の空欄に入るものを選択肢から選んで答えなさい。
選択肢
prepareStatement(sql) ? 1 PreparedStatement
➢ Practice0301.java
1 | package jp.co.f1.jdbc.ch03exercise; |
5 | public class Practice0302 { |
6 | private static String RDB_DRIVE="org.mariadb.jdbc.Driver"; |
7 | private static String URL="jdbc:mariadb://localhost/practice_db"; |
8 | private static String USER="root"; |
9 | private static String PASSWD="root123"; |
11 | public static void main(String[] args) { |
15 | Connection con = null; |
19 | Class.forName(RDB_DRIVE); |
20 | con = DriverManager.getConnection(URL,USER,PASSWD); |
22 | sql = "DELETE FROM practice_table WHERE id = ② ; |
25 | ps.setString( ④ , "00001"); |
26 | num = ps.executeUpdate(); |
27 | System.out.println("\n" + num + "件データを削除しました。\n"); |
30 | System.out.println("JDBCデータベース接続エラー"); |
33 | try{ps.close();}catch(SQLException ignore){} |
36 | try{con.close();}catch(SQLException ignore){} |
NEXT>> 3.5 練習問題 解答