[java] Apache Derby를 사용하여 데이터베이스에서 구조화된 쿼리 언어를 활용하는 방법은 무엇인가요?
Apache Derby는 경량의 오픈 소스 데이터베이스 관리 시스템(DBMS)입니다. 다른 DBMS와 마찬가지로 Derby는 구조화된 쿼리 언어(SQL)를 지원하여 데이터베이스에서 데이터를 조작하고 조회할 수 있습니다.
먼저, 데이터베이스에 연결하기 위해 Derby를 설정해야 합니다. Derby를 다운로드하여 설치한 후, 클래스 패스에 Derby JAR 파일을 추가해야 합니다. 다음은 연결을 위한 Java 코드입니다:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DatabaseExample {
public static void main(String[] args) {
Connection conn = null;
try {
// 데이터베이스 연결
conn = DriverManager.getConnection("jdbc:derby:/경로/데이터베이스명");
System.out.println("데이터베이스 연결 성공!");
// 쿼리 실행 및 결과 처리
// ...
} catch (SQLException e) {
System.out.println("데이터베이스 연결 실패: " + e.getMessage());
} finally {
try {
// 연결 종료
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
System.out.println("연결 종료 실패: " + e.getMessage());
}
}
}
}
위 코드에서 /경로/데이터베이스명
부분에는 Derby 데이터베이스 파일의 경로와 이름을 입력해야 합니다.
데이터베이스에 연결한 후, 쿼리를 실행하고 결과를 처리할 수 있습니다. 여기에는 SELECT, INSERT, UPDATE, DELETE 등의 다양한 SQL 문을 사용할 수 있습니다. 예를 들어, 다음은 customers
테이블에서 모든 레코드를 조회하는 코드입니다:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class DatabaseExample {
public static void main(String[] args) {
Connection conn = null;
try {
conn = DriverManager.getConnection("jdbc:derby:/경로/데이터베이스명");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM customers");
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
System.out.println("ID: " + id + ", Name: " + name);
}
rs.close();
stmt.close();
} catch (SQLException e) {
System.out.println("쿼리 실행 실패: " + e.getMessage());
} finally {
// ...
}
}
}
위 코드에서 SELECT * FROM customers
는 customers
테이블의 모든 열을 조회하는 쿼리입니다. 결과는 ResultSet
객체에 저장되고, rs.next()
를 호출하여 한 줄씩 읽을 수 있습니다.
Apache Derby를 통해 데이터베이스에서 구조화된 쿼리 언어를 사용하는 방법을 알아보았습니다. 더 자세한 내용은 Apache Derby 공식 사이트에서 확인할 수 있습니다.