JDBC 예제 프로그램

다음은 JDBC 드라이버를 통해 CUBRID에 접속하여 데이터를 조회, 삽입하는 것을 간단하게 구성한 예제이다. 예제를 실행하려면 먼저 접속하고자 하는 데이터베이스와 CUBRID 브로커가 구동되어 있어야 한다. 예제에서는 설치 시 자동으로 생성되는 demodb 데이터베이스를 사용한다.

Connection 방법

Connection conn = DriverManager.getConnection("jdbc:cubrid:IP:PORT:DB_NAME:::", "ID", "PASSWORD");

selectData.java

다음은 데이터 조회 예제이다.

import java.sql.*;
public class selectData {
   public static void main(String[] args) throws Exception {
       Connection conn = null;
       Statement stmt = null;
       ResultSet rs = null;
       try {
       // CUBRID에 Connect
       Class.forName("cubrid.jdbc.driver.CUBRIDDriver");
       conn = DriverManager.getConnection("jdbc:CUBRID:localhost:33000:demodb:::","","");
       String sql = "select name, players from event";
       stmt = conn.createStatement();
       rs = stmt.executeQuery(sql);
       while(rs.next()) {
           String name = rs.getString("name");
           String players = rs.getString("players");
           System.out.println("name ==> " + name);
           System.out.println("Number of players==> " + players);
           System.out.println("\n=========================================\n");
       }
       rs.close();
       stmt.close();
       conn.close();
       } catch ( SQLException e ) {
           System.err.println(e.getMessage());
       } catch ( Exception e ) {
           System.err.println(e.getMessage());
       } finally {
           if ( conn != null ) conn.close();
       }
   }
}

insertData.java

다음은 데이터 삽입 예제이다.

import java.sql.*;
public class insertData {
   public static void main(String[] args) throws Exception {
       Connection conn = null;
       Statement stmt = null;
       try {
           // CUBRID에 Connect
           Class.forName("cubrid.jdbc.driver.CUBRIDDriver");
           conn = DriverManager.getConnection("jdbc:cubrid:localhost:33000:demodb:::","","");
           String sql = "insert into olympic(host_year, host_nation, host_city, opening_date,            closing_date) values (2008, 'China', 'Beijing', to_date('08-08-2008','mm-dd-yyyy'),            to_date('08-24-2008','mm-dd-yyyy'))";
           stmt = conn.createStatement();
           stmt.executeUpdate(sql);
           System.out.println("데이터가 입력되었습니다.");
           stmt.close();
       } catch ( SQLException e ) {
           System.err.println(e.getMessage());
       } catch ( Exception e ) {
           System.err.println(e.getMessage());
       } finally {
           if ( conn != null ) conn.close();
       }
   }
}

데이터 삭제 및 갱신 방법은 입력과 수행 방법이 같으므로, 위의 코드에서 질의문만 변경해서 사용한다.