JDBC SQLite JDBC Driver

황제낙엽 2020.02.25 16:44 조회 수 : 6560

sitelink1 https://bitbucket.org/xerial/sqlite-jdbc/downloads/ 
sitelink2 https://github.com/xerial/sqlite-jdbc 
sitelink3  
sitelink4  
sitelink5  
sitelink6  

1. Build

> javac Sample.java
> java -classpath ".;sqlite-jdbc-(VERSION).jar" Sample   # in Windows
or
> java -classpath ".:sqlite-jdbc-(VERSION).jar" Sample   # in Mac or Linux
name = leo
id = 1
name = yui
id = 2

 

2. Usage

Sample.java

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;

    public class Sample
    {
      public static void main(String[] args)
      {
        Connection connection = null;
        try
        {
          // create a database connection
          connection = DriverManager.getConnection("jdbc:sqlite:sample.db");
          Statement statement = connection.createStatement();
          statement.setQueryTimeout(30);  // set timeout to 30 sec.

          statement.executeUpdate("drop table if exists person");
          statement.executeUpdate("create table person (id integer, name string)");
          statement.executeUpdate("insert into person values(1, 'leo')");
          statement.executeUpdate("insert into person values(2, 'yui')");
          ResultSet rs = statement.executeQuery("select * from person");
          while(rs.next())
          {
            // read the result set
            System.out.println("name = " + rs.getString("name"));
            System.out.println("id = " + rs.getInt("id"));
          }
        }
        catch(SQLException e)
        {
          // if the error message is "out of memory",
          // it probably means no database file is found
          System.err.println(e.getMessage());
        }
        finally
        {
          try
          {
            if(connection != null)
              connection.close();
          }
          catch(SQLException e)
          {
            // connection close failed.
            System.err.println(e.getMessage());
          }
        }
      }
    }

How to Specify Database Files

Here is an example to select a file C:\work\mydatabase.db (in Windows)

Connection connection = DriverManager.getConnection("jdbc:sqlite:C:/work/mydatabase.db");

A UNIX (Linux, Mac OS X, etc) file /home/leo/work/mydatabase.db

Connection connection = DriverManager.getConnection("jdbc:sqlite:/home/leo/work/mydatabase.db");

How to Use Memory Databases

SQLite supports on-memory database management, which does not create any database files. To use a memory database in your Java code, get the database connection as follows:

 

Connection connection = DriverManager.getConnection("jdbc:sqlite::memory:");

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
323 [java.lang.ProcessBuilder] “매개변수가 틀립니다” 혹은 ”Cannot run program” 황제낙엽 2021.10.15 685
322 특정 경로에서 쉘 명령어 실행하기 (ProcessBuilder) 황제낙엽 2021.10.08 531
321 HP-UX, IBM-AIX 황제낙엽 2021.06.23 804
320 nashorn ScriptEninge Test Project (war) file 황제낙엽 2021.05.19 657
319 람다(Lambda)와 함수형 인터페이스 황제낙엽 2021.05.10 736
318 javax.script.ScriptEngine 관련 참고사항 (sample java 포함) 황제낙엽 2021.05.09 884
317 Java Scripting API: GraalVM 적용해보기 황제낙엽 2021.05.09 430
316 Java Scripting API: 바인딩과 스크립트 컨텍스트 그리고 실행 성능 개선 file 황제낙엽 2021.05.09 352
315 Java Scripting API: 자바에서 자바스크립트의 함수를 호출할 수 있을까? file 황제낙엽 2021.05.09 813
314 Java에서 Nashorn JavaScript 엔진 사용 file 황제낙엽 2021.05.09 656
313 [JSP] 파일 다운로드 테스트 file 황제낙엽 2021.04.12 3727
312 ResultSet 을 순회하기 전에 사이즈 구하기 황제낙엽 2021.01.14 414
311 ResultSet 의 사이즈로 조회 결과가 있는지 확인 황제낙엽 2021.01.14 425
310 지정한 일자보다 하루 뒤로 설정하기 황제낙엽 2021.01.14 380
309 for, while 등의 loop구문에서 sleep하기 황제낙엽 2020.12.04 593
308 미디어 파일의 metadata를 읽자 (metadata-extractor) file 황제낙엽 2020.08.30 1203
307 [HttpURLConnection] Authorization 헤더를 넣어 GET Request 황제낙엽 2020.08.12 1187
306 직접 작성한 PropertiesUtil.java 황제낙엽 2020.07.21 607
305 [Online Book] manning사의 making java groovy 황제낙엽 2020.06.19 842
304 자바(JAVA) 어노테이션(Annotation) 황제낙엽 2020.04.10 439