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.