> Java > java지도 시간 > 본문

H2 인 메모리 데이터베이스에서 \'테이블을 찾을 수 없음\' 오류를 방지하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-10-26 17:11:02
원래의
958명이 탐색했습니다.

How to Prevent

H2 인 메모리 데이터베이스: "jdbc:h2:mem:

사용 시 "테이블을 찾을 수 없음" 오류 해결 인메모리 데이터베이스에 연결을 시도할 때 "테이블 'TABLE_NAME'을 찾을 수 없습니다." 오류 메시지는 일반적으로 테이블 생성 후 닫혀서 데이터베이스가 테이블을 삭제하고 있음을 나타냅니다.

이 문제를 해결하려면 JDBC 연결 URL에 다음 매개변수를 추가해야 합니다.

;DB_CLOSE_DELAY=-1
로그인 후 복사

예를 들어 수정된 연결 URL은 다음과 같습니다.

jdbc:h2:mem:test;DB_CLOSE_DELAY=-1
로그인 후 복사

설명:

기본 구성(예: jdbc:h2:mem:test)을 사용하여 H2의 In-Memory 데이터베이스에 연결할 때 마지막 연결이 닫힐 때 데이터베이스 내용이 손실됩니다. JVM(Java Virtual Machine)이 실행되는 동안 데이터베이스가 열려 있도록 보장하는 DB_CLOSE_DELAY=-1을 설정해야 합니다. 이렇게 하면 명시적으로 데이터베이스를 닫거나 종료할 때까지 인메모리 데이터베이스의 내용을 유지할 수 있습니다. JVM.

이 구성 변경 사항은 "인 메모리 데이터베이스" 섹션 아래의 H2 기능 페이지에 설명되어 있습니다.

기본적으로 데이터베이스에 대한 마지막 연결을 닫으면 데이터베이스도 닫힙니다. 인메모리 데이터베이스의 경우 이는 콘텐츠가 손실됨을 의미합니다. 데이터베이스를 열어두려면 데이터베이스 URL에 ;DB_CLOSE_DELAY=-1을 추가하세요. 가상 머신이 살아 있는 동안 인메모리 데이터베이스의 내용을 유지하려면 jdbc:h2:mem:test;DB_CLOSE_DELAY=-1을 사용하십시오.

이 솔루션을 따르면 성공적으로 데이터베이스에 연결할 수 있습니다. 인메모리 데이터베이스를 사용하고 "테이블을 찾을 수 없음" 오류 없이 테이블 작업을 수행합니다.

위 내용은 H2 인 메모리 데이터베이스에서 \'테이블을 찾을 수 없음\' 오류를 방지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿