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

데이터베이스 이름 maintemp임시 테이블 및 기타 임시 데이터 개체를 보유하기 위해 기본 데이터베이스 및 데이터베이스 용으로 예약되어 있습니다. 이 두 데이터베이스 이름은 모든 데이터베이스 연결에 존재하며 연결에 사용해서는 안됩니다. 그렇지 않으면 다음 경고 메시지가 표시됩니다.

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