delete 쿼리 예제

DELETE 문을 실행하면 다른 테이블에서 삭제를 일으킬 수 있는 트리거가 실행될 수 있습니다. 예를 들어 두 테이블이 외래 키로 연결되고 참조된 테이블의 행이 삭제되는 경우 참조 무결성을 유지하기 위해 참조 테이블의 행도 삭제해야 하는 것이 일반적입니다. 데이터베이스 구조화 쿼리 언어(SQL)에서 DELETE 문은 테이블에서 하나 이상의 레코드를 제거합니다. 조건을 사용하여 삭제하기 위해 하위 집합을 정의할 수 있으며 그렇지 않으면 모든 레코드가 제거됩니다. [1] MySQL과 같은 일부 DBMS는 하나의 DELETE 문을 사용하여 여러 테이블에서 행을 삭제할 수 있습니다(다중 테이블 DELETE라고도 함). 이렇게 하면 DISTINCTROW 용어가 DELETE 쿼리의 SQL 문에 추가됩니다. DELETE는 행만 삭제합니다. 테이블을 완전히 삭제하기 위해 DROP 명령을 사용할 수 있습니다. 예를 들어 각 직원은 하나 이상의 지역에서 근무하고 있으며 각 지역에는 여러 직원이 있습니다. employeeterritories 테이블은 직원과 지역 간의 관계를 저장하는 데 사용됩니다. DELETE 쿼리를 사용하면 데이터만 삭제됩니다. 테이블 구조와 필드 특성 및 인덱스와 같은 모든 테이블 속성은 그대로 유지됩니다.

DELETE 쿼리는 특정 필드의 데이터뿐만 아니라 전체 레코드를 삭제합니다. 특정 필드의 값을 삭제하려면 값을 Null로 변경하는 업데이트 쿼리를 만듭니다. DELETE 쿼리가 레코드를 삭제하지 못하면 가장 먼저 확인해야 할 것은 기본 테이블을 업데이트할 수 있다는 것입니다. 테이블을 열고 수동으로 필드를 편집하거나 제거할 레코드를 삭제하려고 합니다. 수동으로 수행할 수 없는 경우 쿼리에서 삭제할 수 없습니다. 이는 여러 가지 이유로 인해 디자인 뷰에서 쿼리를 편집할 때 쿼리의 속성 시트에서 이 설정을 설정할 수도 있습니다. 고유 레코드 속성을 예로 설정하기만 하면 레코드를 먼저 삭제하지 않고도 테이블을 삭제할 수 있습니다. 데이터베이스에서 joe를 제거하려면 두 개의 삭제가 실행되어야 합니다: DELETE 쿼리와 함께 WHERE 절을 사용하여 선택한 행을 삭제할 수 있으며, 그렇지 않으면 모든 레코드가 삭제됩니다. Access ADP에서 다른 작업 쿼리와 마찬가지로 이 SQL을 실행하기만 하면 됩니다. 한 번에 여러 레코드를 제거할 수 있고 다른 테이블의 데이터에 연결하여 삭제할 레코드를 지정할 수 있으므로 관계형 데이터베이스의 매우 강력한 기능이자 기본 부분입니다.

“조건”은 단순하거나(예: “Sales > 500”) 복잡할 수 있습니다(예: 하위 쿼리의 결과). 다른 테이블의 다른 행과 연결된 테이블의 행을 삭제하려는 경우 더 복잡해집니다. 예제 1에서 삭제할 행을 결정하는 데 사용하는 기준은 매우 간단합니다. 우리는 또한 더 복잡한 조건을 사용할 수 있습니다. 다음은 하위 쿼리를 조건으로 사용하는 예제입니다. 3. 모든 행이 테이블에서 삭제됨: 다음 두 테이블이 있다고 가정합니다. WHERE 절의 조건이 모든 행에 대해 true이기 때문입니다. Delete 쿼리에 대 한 또 다른 오류는 Microsoft SQL Server 테이블에서 Microsoft 액세스 삭제 쿼리 SQL 구문을 사용할 때 발생할 수 있습니다.

이는 Jet 데이터베이스(MDB 또는 ACCDB)에서 연결된 SQL Server 테이블에 대한 문제가 아니지만 ADP(액세스 데이터 프로젝트)의 문제입니다. 안타깝게도 쿼리를 실행하려고 할 때 쿼리는 경고 메시지를 트리거합니다. 참조 무결성을 유지하려면 Joe의 레코드를 사람과 pa 모두에서 제거해야 합니다.

Comments are closed.