SQLite에서 데이터베이스 파일을 여는 절차
![SQLite에서 데이터베이스 파일을 여는 절차](/img/SQLite/ag-feature-image---sqlite-open-database.webp)
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
명령은 다양한 방식으로 활용할 수 있는 광범위한 기능을 제공합니다. 그러나 필요한 작업을 수행하려면 명령의 기본 사항을 아는 것이 중요합니다.
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