JDBC PreparedStatementの例 – テーブルを作成する
次に、JDBC PrepareStatementを使用してデータベースにテーブルを作成する方法を示す例を示します。 create文を発行するには、次のように `PrepareStatement.executeUpdate()`メソッドを呼び出します。
PreparedStatement preparedStatement = dbConnection.prepareStatement(createTableSQL);//execute create SQL stetement preparedStatement.executeUpdate();
完全な例…
package com.mkyong.jdbc; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; public class JDBCPreparedStatementCreateExample { private static final String DB__DRIVER = "oracle.jdbc.driver.OracleDriver"; private static final String DB__CONNECTION = "jdbc:oracle:thin:@localhost:1521:MKYONG"; private static final String DB__USER = "user"; private static final String DB__PASSWORD = "password"; public static void main(String[]argv) { try { createTable(); } catch (SQLException e) { System.out.println(e.getMessage()); } } private static void createTable() throws SQLException { Connection dbConnection = null; PreparedStatement preparedStatement = null; String createTableSQL = "CREATE TABLE DBUSER1(" + "USER__ID NUMBER(5) NOT NULL, " + "USERNAME VARCHAR(20) NOT NULL, " + "CREATED__BY VARCHAR(20) NOT NULL, " + "CREATED__DATE DATE NOT NULL, " + "PRIMARY KEY (USER__ID) " + ")"; try { dbConnection = getDBConnection(); preparedStatement = dbConnection.prepareStatement(createTableSQL); System.out.println(createTableSQL); //execute create SQL stetement preparedStatement.executeUpdate(); System.out.println("Table \"dbuser\" is created!"); } catch (SQLException e) { System.out.println(e.getMessage()); } finally { if (preparedStatement != null) { preparedStatement.close(); } if (dbConnection != null) { dbConnection.close(); } } } private static Connection getDBConnection() { Connection dbConnection = null; try { Class.forName(DB__DRIVER); } catch (ClassNotFoundException e) { System.out.println(e.getMessage()); } try { dbConnection = DriverManager.getConnection( DB__CONNECTION, DB__USER,DB__PASSWORD); return dbConnection; } catch (SQLException e) { System.out.println(e.getMessage()); } return dbConnection; } }
結果
「DBUSER」という名前のテーブルが作成されます。
CREATE TABLE DBUSER( USER__ID NUMBER(5) NOT NULL, USERNAME VARCHAR(20) NOT NULL, CREATED__BY VARCHAR(20) NOT NULL, CREATED__DATE DATE NOT NULL, PRIMARY KEY (USER__ID) ) Table "dbuser" is created!