SQLite-데이터베이스 첨부
여러 데이터베이스를 사용할 수 있고 한 번에 하나를 사용하려는 경우를 고려하십시오. SQLiteATTACH DATABASE 문은 특정 데이터베이스를 선택하는 데 사용되며이 명령 후에는 모든 SQLite 문이 연결된 데이터베이스에서 실행됩니다.
통사론
다음은 SQLite ATTACH DATABASE 문의 기본 구문입니다.
ATTACH DATABASE 'DatabaseName' As 'Alias-Name';
위의 명령은 데이터베이스가 아직 생성되지 않은 경우에도 데이터베이스를 생성합니다. 그렇지 않으면 논리적 데이터베이스 'Alias-Name'과 함께 데이터베이스 파일 이름을 첨부합니다.
예
기존 데이터베이스를 연결하려는 경우 testDB.db, ATTACH DATABASE 문은 다음과 같습니다.
sqlite> ATTACH DATABASE 'testDB.db' as 'TEST';
SQLite 사용 .database 연결된 데이터베이스를 표시하는 명령입니다.
sqlite> .database
seq name file
--- --------------- ----------------------
0 main /home/sqlite/testDB.db
2 test /home/sqlite/testDB.db
데이터베이스 이름 main 과 temp임시 테이블 및 기타 임시 데이터 개체를 보유하기 위해 기본 데이터베이스 및 데이터베이스 용으로 예약되어 있습니다. 이 두 데이터베이스 이름은 모든 데이터베이스 연결에 존재하며 연결에 사용해서는 안됩니다. 그렇지 않으면 다음 경고 메시지가 표시됩니다.
sqlite> ATTACH DATABASE 'testDB.db' as 'TEMP';
Error: database TEMP is already in use
sqlite> ATTACH DATABASE 'testDB.db' as 'main';
Error: database TEMP is already in use