SQLite에서 데이터베이스 파일을 여는 절차

Bilal Shahid 2023년10월8일
  1. SQLite 열기 명령
  2. SQLite 데이터베이스를 여는 절차
  3. .open 명령을 사용하는 SQLite CREATE 데이터베이스
SQLite에서 데이터베이스 파일을 여는 절차

SQLite는 서버리스 임베디드 관계형 데이터베이스 관리 시스템입니다. SQLite를 사용하면 데이터베이스가 다른 데이터베이스 엔진과 구별되는 단일 파일에 저장됩니다.

이 기사에서는 SQLite의 open 명령을 사용하는 방법에 대해 설명합니다.

SQLite 열기 명령

Windows에서 sqlite3.exe 파일이 있는 sqlite3라는 명령줄 프로그램이 SQL 프로젝트와 함께 제공됩니다. 이 명령줄 프로그램을 사용하면 SQLite 데이터베이스에 대한 SQL 문을 수동으로 실행할 수 있습니다.

SQLite에는 사용자에게 필요한 쿼리를 실행하는 다양한 명령이 있습니다. .open 명령은 이전에 열린 데이터베이스 명령이 닫히면 새 데이터베이스 연결을 여는 데 사용됩니다.

.open 명령이 가장 간단한 형태로 실행될 때, 이는 파일 이름을 인수로하여 sqlite3.open()를 호출합니다. 명령줄 인터페이스가 종료되거나 open 명령이 다시 실행될 때 사라지는 새로운 인메모리 데이터베이스를 열려면 이름으로 '; memory:'을 사용합니다.

open 명령을 실행할 때 새 옵션을 선택하면 데이터베이스가 열기 전에 재설정됩니다. 저장된 모든 이전 데이터가 파괴됩니다.

새 옵션은 이전 데이터를 파괴적으로 덮어씁니다. 본질적으로 확인 없이 파괴적인 덮어쓰기이므로 이 기능을 신중하게 사용하는 것이 좋습니다.

읽기 전용 모드로 데이터베이스를 열려면 --read-only 옵션을 사용하십시오. 여기서는 글쓰기가 금지됩니다. SQLite 데이터베이스를 독립 실행형 파일로 필요하지 않고 이미 존재하는 파일에 추가해야 하는 경우 --append 옵션을 사용하십시오.

--zip 옵션은 지정된 입력이 SQLite 데이터베이스 파일이 아닌 ZIP 아카이브로 분류되도록 합니다. 온디스크 파일의 전체 데이터를 메모리 내 데이터베이스로 열고 데이터베이스로 읽으려면 sqlite3_deserialize() 인터페이스를 활용하여 --deserialize 옵션을 사용할 수 있습니다.

데이터베이스가 큰 경우 많은 메모리가 필요합니다. 파일/데이터베이스에 대한 모든 변경 사항은 .save 또는 .backup.과 같은 특정 명령으로 저장하지 않는 한 디스크에 저장되지 않는다는 점에 유의해야 합니다.

16진수 형식으로 입력을 읽는 데 기능이 있는 --hexdb 옵션도 있습니다. 이 옵션을 사용하면 데이터베이스의 내용을 모두 16진수 형식으로 후속 입력 라인에서 읽을 수 있으며 이 --hexdb 기능은 테스트를 위해 SQLite 개발자에게 필수적입니다.

이 옵션은 SQLite 개발 및 테스트 외에 알려진 사용 사례가 없습니다. 명령줄 도구 'dbtottx'는 데이터베이스에 적합한 텍스트를 생성할 수 있습니다.

SQLite 데이터베이스를 여는 절차

SQLite 데이터베이스를 여는 것은 상당히 쉽습니다. 데이터베이스를 여는 데 사용되는 SQLite의 명령은 .open 입니다.

구문은 다음과 같습니다.

sqlite> .open yourdbname.db

데이터베이스가 새 것이라면 데이터베이스를 만들고 열어야 합니다. 다음 구문을 사용합니다.

sqlite> .open --new yourdbname.db

액세스하려는 데이터베이스가 다른 폴더에 있는 경우 명령줄에 경로를 명확하게 언급해야 합니다. 다음 구문을 사용합니다.

sqlite> .open D:/MainFolder/folder/...yourdbname.db

Windows 명령 셸을 사용할 때 '\'를 사용하여 디렉토리를 나타내는 방법을 알아야 합니다. 그러나 SQLite에서 디렉토리는 '/ '로 표시됩니다.

그러나 여전히 Windows 표기법을 선호하는 경우 모든 '\'에 대해 이스케이프 시퀀스를 사용하십시오.

다른 데이터베이스 시스템과 마찬가지로 데이터베이스 이름을 사용하여 이중 이름 테이블을 식별할 수 있습니다. 고유한 테이블 이름을 직접 사용할 수 있습니다.

select * from ttt.yourTableName;

그렇지 않고 연결된 모든 데이터베이스의 테이블 이름이 고유한 경우 다음을 수행할 수 있습니다.

select * from uniqueTableName;

데이터베이스 파일을 지정하기 위해 SQLite 셸 도구 내에서 명령을 찾고 있다면 대답은 간단합니다. sqlite3 명령줄 인터페이스로 액세스하려면 모든 데이터베이스 파일을 하나의 디렉토리에 복사하여 붙여넣으십시오.

이제 명령줄에서 디렉터리로 전환합니다. sqlite3을 연 다음 .open mydbname.db를 입력합니다.

이때 서로 다른 데이터베이스에 속한 서로 다른 테이블에 대한 조인 작업을 사용할 수 있습니다.

.open 명령을 사용하는 SQLite CREATE 데이터베이스

SQLite에서 개방형 데이터베이스 옵션은 뛰어난 접근성을 허용합니다. 일반적으로 sqlite3.exe 파일이 있는 곳에 새 데이터베이스 파일이 생성됩니다.

SQLite 파일을 열고 다른 위치에 데이터베이스 파일을 생성하는 방법을 배우려면 다음과 같은 방법으로 수행할 수 있습니다.

  • sqlite3.exe가 있는 폴더로 수동 이동합니다.
  • sqlite3.exe로 이동하고 두 번 클릭하여 SQLite 명령줄을 엽니다.
  • 데이터베이스 파일을 열려면 다음 명령을 사용하십시오.
.open c:/users/yourname/desktop/yourDB.db

이 명령은 이제 yourDB.db라는 이름으로 새 데이터베이스를 생성하고 이 데이터베이스 파일을 명령에서 지정한 위치에 저장합니다. 데이터베이스가 이미 생성된 경우 동일한 명령으로 파일을 열 수 있습니다.

동일한 명령을 다시 작성하면 방금 만든 데이터베이스 파일이 열립니다. 이 명령에서 SQLite는 이름을 가진 파일이 제공된 위치에 존재하는지 여부를 확인합니다.

존재하는 경우 SQLite는 파일을 엽니다. 그렇지 않으면 해당 위치에 데이터베이스 파일이 생성됩니다.

SQLite의 .open 명령은 다양한 방식으로 활용할 수 있는 광범위한 기능을 제공합니다. 그러나 필요한 작업을 수행하려면 명령의 기본 사항을 아는 것이 중요합니다.

작가: Bilal Shahid
Bilal Shahid avatar Bilal Shahid avatar

Hello, I am Bilal, a research enthusiast who tends to break and make code from scratch. I dwell deep into the latest issues faced by the developer community and provide answers and different solutions. Apart from that, I am just another normal developer with a laptop, a mug of coffee, some biscuits and a thick spectacle!

GitHub

관련 문장 - SQLite Database