2010-12-14 2 views
3

나는 그들의 사이트에서 약간의 조사를했고, 일부 Google-ing 후에는 C & C++ 용 드라이버 만있는 것처럼 보였다. SQLLite에서 사용할 수있는 개방형 드라이버가 있습니까? 아니면 JDBC와 함께 사용할 수 있습니까?Java에서 SQLite 용 드라이버가 있습니까?

UPDATE

나는 리눅스에서 개발을하고 있어요,하지만 난이 열려 내 옵션을 유지하고 싶습니다. 네이티브 라이브러리가 작동하지만 Java에서 익숙했던 교차 플랫폼의 자유는 제공하지 않습니다.

답변

2

SQLite는 기본 라이브러리이므로 플랫폼 독립적 인 솔루션이 그렇게 간단하지 않습니다. SQLiteJDBC 프로젝트는 내부적으로 복잡하지만 작동하는 시스템을 사용하여 SQLite 데이터베이스 플랫폼에 독립적으로 액세스합니다 (대부분의 플랫폼에서 속도가 빠름). 이름에서 알 수 있듯이 JDBC를 통해 사용할 수 있습니다 (기본 페이지의 코드 샘플 참조).

특정 플랫폼이 하나만 필요한 경우 SQLite Java wrapper을 사용할 수도 있습니다. 윈도우의 경우 미리 컴파일 된 바이너리가 있습니다. 출처도 있습니다.

+0

똑같은 일을 할 리눅스 용 네이티브 라이브러리에 대해 알고 있니? – bakoyaro

+0

Linux 용 사전 컴파일 된 바이너리를 제공하는 것이 큰 문제입니다. 한번 시도해 보았습니다. 모든 것을 lib에 정적으로 컴파일해야합니다. 표준 make && make install을 통해 SQLite Java 래퍼를 직접 컴파일하거나 SQLite Java 래퍼를 직접 사용하는 것이 더 좋습니다. 후자는 다른 플랫폼을위한 원시 JNI 라이브러리를 많이 포함하고 있으며, 일치하지 않으면 모든 곳에서 실행되어야하는 일부 에뮬레이션 코드를 사용합니다. – Robert

4

SQLite JDBC은 Java로 작성되었으므로 외부 종속 관계가 없습니다.

+0

나는 그것에 대해 들어 보지 못했다. 나는 옵션으로 그것을 들여다 볼 것이다. – bakoyaro

3

내가 사용하고 org:xerial:sqlite-jdbc

예 그루비 스크립트

@Grab(group='org.xerial', module='sqlite-jdbc', version='[3.6.4,)') 
sql = groovy.sql.Sql.newInstance("jdbc:sqlite:test.db","org.sqlite.JDBC") 
sql.execute("create table students(name, age)") 

(참고 : 3.6.4이 아닌 최신 버전)

+0

sqlite-jdbc (현재 2017-10-08 : sqlite-jdbc-3.20.1)는 github에서 호스팅됩니다. https://github.com/xerial/sqlite-jdbc 참고 : https://stackoverflow.com/a/1525453/1689714 –

1

또한 순수 자바 IMPL입니다 SQLJet,이 이것은 sqlite와 호환됩니다.

관련 문제