sql delete 문 예제

WHERE는 삭제되는 행 수를 제한하는 데 사용되는 조건을 지정합니다. WHERE 절이 제공되지 않으면 DELETE는 테이블에서 모든 행을 제거합니다. DELETE 작업의 일부로 삭제된 행 또는 이를 기반으로 하는 식을 반환합니다. OUTPUT 절은 뷰 또는 원격 테이블을 대상으로 하는 DML 문에서 지원되지 않습니다. 자세한 내용은 OUTPUT 절(Transact-SQL)을 참조하십시오. 테이블의 모든 행을 삭제하려면 TRUNCATE 테이블을 사용합니다. TRUNCATE 테이블은 DELETE보다 빠르며 시스템 및 트랜잭션 로그 리소스를 더 적게 사용합니다. TRUNCATE 테이블에는 제한이 있습니다(예: 테이블이 복제에 참여할 수 없음). 자세한 내용은 [거래-SQL] DELETE 문이 행을 반환하지 않음을 참조하세요. 즉, 결과 집합을 생성하지 않습니다. 참고: WHERE 절에서 제공하는 조건에 따라 단일 레코드와 여러 레코드를 삭제할 수 있습니다. WHERE 절을 생략하면 모든 레코드가 삭제되고 테이블이 비어 있습니다. 테이블을 삭제하지 않고 테이블의 모든 행을 삭제할 수 있습니다.

즉, 테이블 구조, 특성 및 인덱스는 그대로 유지됩니다: 데이터베이스 관리 시스템이 외래 키 제약 조건을 지원하지 않는 경우 단일 트랜잭션에서 두 DELETE 문을 모두 실행하여 명령문이 그대로 유지되도록 해야 합니다. 모든 또는 무모드에서 실행됩니다. 출력: 테이블의 모든 레코드가 삭제되고 표시할 레코드가 남아 있지 않습니다. 테이블 학생은 비어있을 것입니다! WHERE 절에 지정된 내용에 따라 두 가지 형태의 delete 작업이 있습니다. 행을 삭제하기 전에 힙에 클러스터된 인덱스를 만듭니다. 행이 삭제된 후 클러스터된 인덱스를 삭제할 수 있습니다. 이 메서드는 이전 메서드보다 시간이 많이 걸리며 더 많은 임시 리소스를 사용합니다. 데이터베이스에서 joe를 제거하려면 SQL DELETE 쿼리가 테이블에서 기존 레코드를 삭제하는 데 사용되는 두 개의 삭제를 실행해야 합니다. SQLite DELETE 문을 사용하면 테이블의 행 하나, 여러 행 및 모든 행을 삭제할 수 있습니다.

SQLite DELETE 문의 구문은 다음과 같습니다: 검색된 삭제는 삭제할 행을 한정하기 위한 검색 조건을 지정합니다. 예를 들어 WHERE 열_name = 값입니다. 테이블에 새 행을 삽입하고 테이블의 기존 데이터를 업데이트하는 방법을 배웠습니다. 경우에 따라 테이블에서 행을 제거해야 합니다. 이 경우 SQLite DELETE 문을 사용합니다. 참고: 테이블에서 레코드를 삭제할 때는 주의해야 합니다! DELETE 문의 WHERE 절을 확인합니다. WHERE 절은 삭제해야 할 레코드를 지정합니다. WHERE 절을 생략하면 테이블의 모든 레코드가 삭제됩니다! 다음 예제에서는 WHERE 절이 삭제된 행 수를 제한하는 데 사용되지 않으므로 AdventureWorks2012 데이터베이스의 SalesPersonQuotaHistory 테이블의 모든 행을 삭제합니다.

Uncategorized