SQLITE 데이터베이스 파일 버전을 찾는 방법


82

sqlite 데이터베이스 파일이 거의 없습니다. 데이터베이스 파일 버전, 즉 데이터베이스가 sqlite2 또는 sqlite3 또는 다른 주 / 하위 버전 (sqlite 라이브러리 또는 드라이버 또는 user_version 또는 schema_version이 아님)으로 생성되었는지 알고 싶습니다.


3
아래에서 가장 많이 득표 한 답변을 답변으로 표시해야합니다.
Fmstrat

14
나는 다를 것을 간청한다. OP는 그의 질문에 답하고 그를 도왔던 대답을 받아 들여야합니다. 너무 자주, 그것은 가장 대중적인 대답이 아니며 때로는 가장 대중적인 대답이 완전히 잘못되었습니다.
Mawg는 분석 재개 모니카 말한다

답변:


119

sqlite 버전을 제공하는 sqlite 탐색기에서이 명령을 작성할 수 있습니다.

select sqlite_version();

49
그러면 데이터베이스 파일 버전이 아닌 라이브러리 버전이 반환됩니다.
laalto 2014 년

: @laalto 의견이 공식 문서에 의해 확인 sqlite.org/lang_corefunc.html#sqlite_version
파올로 Fulgoni

실제로, @Paolo 링크에서 위의 기능은 그냥 SQLite는 출시 날짜를 볼 수 있는지와, sqlite_source_id ()를 참조하면 버전을 얻을 수 있습니다
올리비에 houssin

4
이것이 질문에 대한 답은 아니지만, 나는 답을 찾기 위해 구글에서 왔습니다 …
o0 '.

85

다음을 통해 데이터베이스 파일의 버전 번호를 얻을 수 있습니다 Magic Header String.

  • sqlite2 ==> 처음 48 바이트
  • sqlite3 ==> 처음 16 바이트

$ head -c 48 file2.db
** This file contains an SQLite 2.1 database **

$ head -c 16 file3.db
SQLite format 3

더 쉬운 방법은 다음 file명령을 사용하는 것입니다 .

$ file file2.db
file2.db: SQLite 2.x database

$ file file3.db
file3.db: SQLite 3.x database

5
그 질문에 대한 유일한 정답, 감사합니다!
Jérôme B

순진 방법은 메모장 ++ (! 파일이 큰 경우이 작업을 수행하지 않음)을 사용하여 파일을 열 수 있습니다
파올로 Fulgoni

@PaoloFulgoni XVI32 는 또한 이러한 작업을위한 좋은 도구입니다.
Nils Lindemann

21

user_version 가져 오기 : sql 실행 : PRAGMA user_version;

schema_version 가져 오기 : PRAGMA schema_version;

데이터베이스 파일 (.db) 생성시 user_version은 사용자가 설정할 수 있습니다.


18

sqlite 프로그램 버전 3의 정답은 다음과 같습니다.

sqlite3 --version

2
이것은 SQLite에서 만든 데이터베이스 버전이 아니라 sqlite3 프로그램의 버전입니다.
Matt Chan

4

헤더 파일 에서 정보를 추출 할 수 있습니다 . 데이터베이스 파일을 '손으로'열어야하지만이 정보를 얻을 수있는 API 함수가 있는지 모르겠습니다.


1

파이썬 셸을 열고 다음 단계를 작성해야합니다.

import sqlite3

sqlite3.sqlite_version

이것은 파이썬에서 사용하는 sqlite3 버전을 제공합니다.
John Go-Soco

일부 사용자에게는 정확하지 않을 수 있지만 제 경우에는 Ubuntu 18.04에서 Django를 사용하는 것이 실제로 작동하는 유일한 방법이라는 점을 지적해야합니다. 이상하게도 명령 셸에서 "sqlite3 --version"을 시도하면 sqlite3가 설치되지 않았다고 주장하는 반면, 파이썬 내부에서 수행하면 django / python이 사용중인 버전이 무엇인지 알려주었습니다.
rossdavidh

0

Visual Studio에서 데이터 연결이있는 경우 서버 탐색기에서 데이터베이스를 마우스 오른쪽 단추로 클릭하고 속성을 선택하면 버전이 속성 창에 표시됩니다 (놀랍게도 버전 아래). 데이터베이스를 열려면 먼저 데이터베이스를 왼쪽 클릭해야 할 수 있습니다.


1
OP가 sql-server가 아닌 sqlite에 대해 묻고 있다고 생각합니다.
Kshitiz Sharma 2013

0

나는 이것이 sqlite의 버전을 결정하는 가장 쉬운 방법이라는 것을 알았습니다. Python IDLE 셸을 실행 한 후 다음을 수행합니다.

>>> import sqlite3
>>> sqlite3.version
'2.6.0'

제 경우에는 2.6.0이었습니다. 도움이 되었기를 바랍니다. Mark


2
참고로 Python IDLE 셸을 실행하려면 python터미널에 입력하면됩니다.>>>
thehme

9
이것은 SQLite 버전이 아닌 모듈 버전을 제공합니다. 이렇게하려면 sqlite3.sqlite_version. docs.python.org/3.5/library/...
베르트랑 Bordage에게

0

수동 파일 확인

sqlite3.version이 모듈의 버전 번호 (문자열). 이것은 SQLite 라이브러리의 버전이 아닙니다.

sqlite3.version_info 정수의 튜플로서이 모듈의 버전 번호. 이것은 SQLite 라이브러리의 버전이 아닙니다.

sqlite3.sqlite_version 런타임 SQLite 라이브러리의 버전 번호 (문자열).

sqlite3.sqlite_version_info 정수의 튜플 인 런타임 SQLite 라이브러리의 버전 번호입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.