삭제(SQL)

Delete (SQL)

Database Structured Query Language(SQL; 데이터베이스 구조화 쿼리 언어)에서 DELETE 테이블에서 하나 이상의 레코드를 삭제합니다.조건을 사용하여 삭제할 서브셋을 정의할 수 있습니다.그렇지 않으면 모든 레코드가 삭제됩니다.[1]MySQL과 같은 일부 데이터베이스 관리 시스템(DBMS)에서는 하나의 DELETE 문을 사용하여 여러 테이블에서 행을 삭제할 수 있습니다(이것은 다중 테이블 DELETE라고도 불립니다).

테이블 파이에서 컬럼 플레이버가 레몬 머랭과 같은 삭제합니다.

삭제 부터 파이  어디에 ='레몬 머랭'; 

높이 값이 80보다 작으면 트리의 을 삭제합니다.

삭제 부터 나무들  어디에 높이 < > 80; 

테이블에서 모든 행 삭제:

삭제 부터 마이테이블; 

다음 조건의 서브쿼리를 사용하여 my table에서 행을 삭제합니다.

삭제 부터 마이테이블  어디에 아이디 입력 (        선택한다. 아이디          부터 마이테이블2       ); 

값 목록을 사용하여 mytable에서 행을 삭제합니다.

삭제 부터 마이테이블  어디에 아이디 입력 (        값 1,        값 2,        값 3,        값 4,        값 5       ); 

관련 테이블을 사용한 예

사용자와 주소를 나열하는 단순한 데이터베이스가 있다고 가정합니다.특정 주소에는 여러 사람이 거주할 수 있으며, 여러 주소에는 한 사람이 거주할 수 있습니다(이것은 다대다 관계의 예입니다).데이터베이스에는 사용자, 주소 pa의 3개의 테이블만 있으며 다음 데이터가 포함되어 있습니다.

사람인
pid 이름.
1 조.
2 밥.
3
주소.
구호. 묘사
100 2001년 메인 스트리트
200 35 피코블로드
pid 구호.
1 100
2 100
3 100
1 200

pa 테이블은 인물과 주소 테이블을 관련지어 조, 밥, 앤은 모두 2001년 메인 스트리트에 살고 있지만, 조는 피코 대로에도 살고 있습니다.

데이터베이스에서 Joe를 삭제하려면 다음 두 가지 삭제를 수행해야 합니다.

 삭제 부터 사람인 어디에 pid=1;  삭제 부터  어디에 pid=1; 

참조 무결성을 유지하기 위해 Joe의 기록은 개인과 아버지 모두에서 삭제해야 합니다.무결성을 유지하는 방법은 다양한 관계형 데이터베이스 관리 시스템에서 [citation needed]다르게 발생할 수 있습니다.테이블이 3개뿐만이 아니라 행이 개인에서 삭제될 때마다 링크된 행이 pa에서 삭제되도록 데이터베이스에도 트리거가 설정되어 있을 수 있습니다.그리고 첫 번째 문장은 다음과 같습니다.

 삭제 부터 사람인 어디에 pid=1; 

두 번째가 자동으로 트리거됩니다.

 삭제 부터  어디에 pid=1; 

관련 명령어

테이블에서 모든 행을 삭제하는 데 시간이 많이 걸릴 수 있습니다.일부[clarification needed] DBMS에서는 메타데이터만 변경되고 일반적으로 제약 조건을 적용하거나 트리거를 실행하는 데 시간이 걸리지 않으므로 훨씬 더 빨리 작동하는 TRUNCATE TABLE 명령을 제공합니다.

DELETE는 행만 삭제합니다.테이블을 완전히 삭제하려면 DROP 명령을 사용할 수 있습니다.

레퍼런스

  1. ^ "SQL Delete Statement". w3schools.com.