본문 바로가기
WIKI 기술 지식 베이스

DETACH DATABASE

원문 보기 위키 갱신

DETACH DATABASE 문은 현재 연결에서 이전에 붙였던(attached) 데이터베이스를 떼어내요.

출처: 문서

본문

DETACH DATABASE 문은 현재 연결에서 이전에 붙인 데이터베이스를 제거해요. 떼어낸 뒤에는 그 데이터베이스의 테이블을 스키마 이름으로 접근할 수 없어요.

문법

DETACH [DATABASE] schema-name;

설명

DETACH는 schema-name으로 식별되는 붙은 데이터베이스와의 연결을 닫고 자원을 해제해요. 이후에 schema-name.table-name을 참조하면 실패해요.

절

절 설명
DATABASE 선택 키워드. 동작에는 영향이 없어요.
schema-name 데이터베이스를 붙일 때 부여했던 스키마 이름.

main과 temp 스키마는 떼어낼 수 없어요.

트랜잭션이 활성화되어 있는 동안에는 DETACH를 쓸 수 없어요. 데이터베이스를 떼기 전에 열려 있는 트랜잭션을 커밋하거나 롤백하세요.

예제

데이터베이스 떼기

ATTACH 'archive.db' AS archive;

-- Use the attached database
SELECT count(*) FROM archive.events;

-- Detach when done
DETACH DATABASE archive;

DATABASE 키워드 없이 떼기

DETACH archive;

더 알아보기 (Learn more)