>  기사  >  JDBC 및 SQLite - 무엇을 시도해도 올바른 드라이버를 찾을 수 없습니다.

JDBC 및 SQLite - 무엇을 시도해도 올바른 드라이버를 찾을 수 없습니다.

王林
王林앞으로
2024-02-09 10:57:18571검색

php 편집자 Yuzai는 JDBC와 SQLite를 사용할 때 문제에 직면했습니다. 아무리 노력해도 적합한 드라이버를 찾을 수 없었습니다. JDBC는 Java가 데이터베이스에 연결하기 위한 표준 인터페이스인 반면, SQLite는 경량 임베디드 관계형 데이터베이스 엔진입니다. 그러나 JDBC는 다양한 데이터베이스용 드라이버를 제공하지만 SQLite용으로 특별히 설계된 드라이버는 없습니다. 이로 인해 편집자는 혼란스러워졌고 SQLite 데이터베이스를 정상적으로 연결하고 운영할 수 없게 되었습니다. 다음 기사에서는 이 문제를 해결하는 방법을 살펴보겠습니다.

질문 내용

학습 목적으로 간단한 자바 프로그램을 만들어서 sqlite 데이터베이스에 연결해 보려고 합니다. 하지만 아무리 노력해도 성공할 수 없었습니다. 저는 항상 no 适用于 jdbc:sqlite:database.db 드라이버를 구합니다. 하지만 너무 간단해야 합니다. 나는 Maven 저장소에서 많은 드라이버를 사용해 보았습니다.

저는 이론을 읽고 이해했습니다. jdbc api는 jdbc 관리자와의 통신을 처리하고 jdbc 드라이버는 데이터베이스와의 통신을 처리합니다. 또한 컴파일된 클래스 파일을 실행할 때 데이터베이스 드라이버가 포함된 .jar 파일에 클래스 경로를 추가해야 한다는 것도 배웠습니다. 예를 들어 여기에 설명된 대로입니다.

일부 튜토리얼에서는 드라이버를 등록하려면 class.forname()를 사용해야 한다고 주장하지만 Oracle 문서에는 다음과 같이 나와 있습니다.

으아악

또한 제가 따랐던 sqlite 튜토리얼에서는 drivermanager.getconnection(url); 예제 sqlitetutorial.net

을 실행하기 전에 드라이버를 등록하지 않았습니다.

내 디렉토리에 e:project 다음 파일이 있습니다:

으아악

컴파일된 클래스 파일을 실행할 때 터미널 창(powershell)에서 java -cp ".;sqlite-jdbc-3.44.1.0.jar" database

를 사용합니다.

내 코드는 다음과 같습니다.

으아악

저를 앞으로 나아갈 수 있도록 도움을 주시면 정말 감사하겠습니다.

.jar 파일을 찾을 수 없는 것과 관련이 있는 것 같지만 가능한 모든 것을 시도했습니다. .jar 파일의 복사본을 다른 디렉토리의 아무 곳에나 두고, 이름을 바꿔서 더 간단하게 만들고, 추가 여러 디렉터리 클래스 경로 추가 등 무엇이 누락되었을지 모르겠습니다.

또한 "참조 라이브러리" 아래에 .jar 파일을 추가하여 vscode에서 동일한 작업을 수행하려고 해도 여전히 작동하지 않습니다.

해결 방법

문제는 sqlite jdbc 드라이버도 필요하다는 것입니다. slf4j-api-1.7.36.jar 자세한 내용은 github 저장소를 참조하세요.

즉, 해당 디렉토리에 slf4j-api-1.7.36.jar를 넣고 다음을 사용해야 합니다.

으아악

내 컴퓨터에서는 이렇게 하면 작동합니다:

으아악

있는 경우 class.forname("org.sqlite.jdbc") 明确添加到您的应用程序中,您将能够诊断此问题,因为如果没有 slf4-api-1.7.36.jar 则会导致中(我将 class.forname 添加到 main):

으아악

따라서 드라이버를 명시적으로 로드할 필요는 없지만 추가 문제 해결 정보를 제공할 수 있습니다.

위 내용은 JDBC 및 SQLite - 무엇을 시도해도 올바른 드라이버를 찾을 수 없습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제