5.1 DELETE FROM 문
SQL에서 쉽게 할 수 있는 것은 데이터를 삭제하는 것입니다. 절대적으로 모든 것을 매우 빠르게 삭제할 수 있으며 아무도 확인을 요청하지 않습니다.
가장 간단한 시나리오부터 시작해 보겠습니다. 테이블에서 한 행을 삭제하는 방법 .
이것은 가장 자주 보게 될 시나리오이며 일반적으로 특정 레코드의 삭제이며 표준 쿼리는 일반적으로 다음과 같습니다.
DELETE FROM table
WHERE id = 133;
이것은 열 이름을 지정할 필요가 없는 유일한 쿼리입니다. 결국 데이터는 행에서 즉시 삭제됩니다.
두 번째 시나리오는 id list 가 제공하는 행을 삭제하는 것 입니다 . 여기에서도 모든 것이 매우 간단합니다.
DELETE FROM table
WHERE id IN (1, 2, 3, …);
세 번째 시나리오는 특정 조건과 일치하는 행을 제거하는 것입니다.
DELETE FROM table
WHERE condition;
모든 프로그래머를 해고하고 싶다고 가정하고 다음과 같은 요청을 작성해야 합니다.
DELETE FROM employee
WHERE occupation = 'Programmer';
마지막으로 모든 레코드를 삭제하려면 다음과 같은 쿼리를 작성할 수 있습니다.
DELETE FROM table
이 간단한 쿼리는 테이블에서 모든 레코드를 제거하기에 충분합니다. 그런데 이 경우에는 Ctrl + Z가 없습니다. 녹음은 복구 가능성없이 단순히 삭제됩니다. 따라서 백업을 더 자주 하십시오 .
5.2 모두 제거
빠른 제거(사용자에게 골칫거리 추가)를 위해 SQL에는 몇 가지 추가 명령이 있습니다.
테이블의 모든 데이터를 빠르게 삭제하는 방법은 무엇입니까? 연산자를 사용하십시오 TRUNCATE
.
TRUNCATE TABLE table
테이블 이름에 오타가 하나 있고 며칠간의 데이터 복구가 제공됩니다. 데이터베이스 관리자가 아니라 다행입니다.
테이블의 데이터뿐만 아니라 테이블 자체를 삭제해야 하는 경우 다음과 같은 연산자가 DROP
있습니다 .
DROP TABLE table
그건 그렇고, 데이터베이스 스키마 와 유사한 옵션이 있습니다 . 데이터베이스 자체를 삭제하려면 다음을 수행하십시오.
DROP SCHEME database
또는:
DROP DATABASE database
DROP을 사용하여 다음 항목을 삭제할 수도 있습니다.
- 이벤트
- 기능
- 절차
- 색인
- 보다
- 방아쇠
다음은 데이터 삭제와 관련된 몇 가지 흥미로운 이야기입니다.
오늘의 휴식. GitLab, 시스템 관리자 오류로 고객 데이터 300GB 삭제