수색…


소개

Drop 키워드는 다양한 SQL 오브젝트와 함게 사용할 수 있습니다.이 주제는 데이터베이스 오브젝트에 대한 다른 사용법의 빠른 예제를 제공합니다.

비고

MSDN 링크

테이블 놓기

DROP TABLE 명령은 테이블 정의와 모든 데이터, 색인, 트리거, 제한 조건 및 관련 권한을 제거합니다.

테이블을 삭제하기 전에 테이블을 참조하는 개체 (보기, 저장 프로 시저, 다른 테이블)가 있는지 확인해야합니다.

FOREIGN KEY가 다른 테이블에서 참조하는 테이블을 삭제할 수 없습니다. 먼저 참조하는 외래 키를 삭제해야합니다.

뷰 또는 저장 프로 시저에서 참조하는 테이블을 삭제할 수 있지만 테이블을 삭제 한 후에는 뷰 또는 저장 프로 시저를 더 이상 사용할 수 없습니다.

구문

DROP TABLE [ IF EXISTS ] [ database_name . [ schema_name ] . | schema_name . ]
table_name [ ,...n ] [ ; ]
  • IF EXISTS - 존재하는 경우에만 표 제거
  • database_name - 테이블이 들어있는 데이터베이스의 이름 지정
  • schema_name - 테이블이있는 스키마의 이름 지정
  • table_name - 삭제할 테이블의 이름 지정

예제들

현재 데이터베이스 및 기본 스키마에서 TABLE_1 이라는 이름의 테이블을 제거하십시오.

DROP TABLE Table_1;

데이터베이스 HR 및 기본 스키마 dbo에서 TABLE_1 로 테이블 제거

DROP TABLE HR.Table_1;

데이터베이스 HR 및 스키마 외부 에서 TABLE_1 로 테이블 제거

DROP TABLE HR.external.TABLE_1;

데이터베이스 삭제

DROP DATABASE 명령은 현재 SQL Server 인스턴스의 상태 (오프라인, 읽기 전용, 용의자 등)에 관계없이 데이터베이스 카탈로그를 제거합니다.

데이터베이스 스냅 샷을 먼저 삭제해야하므로 데이터베이스 스냅 샷이 연결되어 있으면 데이터베이스를 삭제할 수 없습니다.

데이터베이스 드롭은 저장 프로 시저 'sp_detach_db'를 사용하지 않는 한 데이터베이스에서 사용되는 모든 물리적 디스크 파일 (오프라인이 아닌 경우)을 제거합니다.

데이터베이스 스냅 샷 드롭은 SQL Server 인스턴스에서 스냅 샷을 삭제하고 SQL Server 인스턴스가 사용하는 실제 파일을 삭제합니다.

삭제 된 데이터베이스는 데이터베이스 스냅 샷이 아닌 백업을 복원해야만 다시 생성 할 수 있습니다.

구문

DROP DATABASE [ IF EXISTS ] { database_name | database_snapshot_name } [ ,...n ] [;]  
  • IF EXISTS - 존재하는 경우에만 표 제거
  • database_name - 삭제할 데이터베이스의 이름을 지정합니다.
  • database_snapshot_name - 제거 할 데이터베이스 스냅 샷을 지정합니다.

예제들

단일 데이터베이스를 제거하십시오.

DROP DATABASE Database1;

여러 데이터베이스 제거

DROP DATABASE Database1, Database2;

스냅 샷 제거하기

DROP DATABASE Database1_snapshot17;

데이터베이스가있는 경우 제거 중

DROP DATABASE IF EXISTS Database1;

임시 테이블 삭제

SQL 서버에는 2 가지 유형의 임시 테이블이 있습니다.

  1. ##GlobalTempTable 은 모든 사용자의 세션 사이에서 전송되는 임시 테이블 유형입니다.
  2. #LocalTempTable 임시 탭 - 현재 범위에만 존재하는 임시 테이블 유형입니다 (실제 프로세스에서만 - 현재 프로세스의 ID를 SELECT @@SPID 얻을 수 있음).

임시 테이블 삭제 프로세스는 일반 테이블과 동일합니다.

DROP TABLE [ database_name . [ schema_name ] . | schema_name . ] table_name   

SQL Server를 시작하기 전에 2016 :

IF(OBJECT_ID('tempdb..#TempTable') is not null)
    DROP TABLE #TempTable;

SQL Server 2016 :

DROP TABLE IF EXISTS #TempTable


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow