얼마전부터 개인프로젝트용 DBMS로 SQLite를 사용하고 있습니다. 마땅한 GUI client를 찾아봤는데, 딱 마음에 드는건 없더군요. 그냥 Eclipse용 DB 플러그인으로 버티기로 하고 이것저것 물색하다가 다음과 같이 결론:

JDBC드라이버는 두 가지를 쉽게 구할 수 있습니다.

  • Christian Werner가 만든 Type 2 드라이버: http://www.ch-werner.de/javasqlite/
    • 구글에서 'sqlite jdbc'로 검색하면 제일 위에 올라옵니다.
    • Type 2이므로 DLL 설치 필요합니다.
    • 동작은 잘 되는데, SQL 문법에러 메시지 표시를 제대로 못해줍니다. (무조건 PreparedStatement 생성 예외로 나오더군요)
    • 접속 URL은 jdbc:sqlite:/c:/path/to/dbfile/sample.db 스타일. 드라이브명 앞에 '/' 들어갑니다.
  • David Crawshaw가 만든 Type 2 드라이버: http://www.zentus.com/sqlitejdbc/
    • 역시 Type 2이므로 DLL 설치 필요합니다.
    • 접속 URL은 jdbc:sqlite:c:/path/to/dbfile/sample.db 스타일입니다. 접속 URL이 틀릴 경우 'OutOfMemoryError'를 발생시켜 사람을 놀래키더군요.
    • SQL 문법에러 제대로 보여줍니다. 강추!
그런데 David Crawshaw의 JDBC 드라이버를 이용할 경우 QuantumDB에서 문제가 발생하더군요. (Sqlite는 특성상 catalog 개념이 없습니다. 파일 하나가 그냥 통째로 DB죠. 그래서 이 JDBC 드라이버에서는 DatabaseMetaData 쪽에서 catalog 관련한 부분을 null을 리턴하게 만들어져있는데, 이게 QuantumDB에서 문제가 되더군요 - 아래 화면처럼 트리가 망가지면서 NullPointerException 발생합니다)

QuantumDB

SQLExplorer


지금은 SQL Explorer를 테스트해보고 있는 중입니다. SQL 윈도우를 여러개 쓸 수 있어서 마음에 드는데, 한글문제는 잘 해결이 안되네요. 한글문제 해결하는 부분은 - 성공한다면 ^^ - 별도로 포스팅하겠습니다.


  1. ErnestPr 2014.08.22 15:25 댓글주소 | 수정 | 삭제 | 댓글

    이용약관위배로 관리자 삭제된 댓글입니다.





티스토리 툴바