DELETE 키워드를 사용하여 해당 레코드를 삭제 할 수 있음
5. 레코드 제거
person 테이블의 레코드 삭제
sql
DELETE FROM person;favorite_food, CONSTRAINT fk_favorite_food_person_id FOREIGN KEY (person_id) REFERENCES person (person_id))
ALTER 키워드를 사용하여 기존의 제약조건 제거
sql
-- ALTER TABLE 테이블명 DROP FOREIGN KEY 외래키 제약조건명
ALTER TABLE favorite_food DROP FOREIGN KEY fk_favorite_food_person_id;부모 테이블(person)의 데이터 삭제 시 자식 테이블(favorite_food)의 데이터도 같이 제거되도록 CASCADE 속성 설정
sql
-- ALTER TABLE 테이블명 ADD CONSTRAINT 외래키 제약조건명 FOREIGN KEY 자식속성
-- REFERENCES 부모테이블명(자식 속성이 참고할 부모속성) ON DELETE CASCADE;
ALTER TABLE favorite_food
ADD CONSTRAINT FOREIGN KEY (person_id)
REFERENCES person(person_id)
ON DELETE CASCADE;→ 외래키 이름을 따로 작성하지 않으면 기본으로 생성됨
다시 레코드 삭제
sql
DELETE FROM person;→ 별도의 WHERE 키워드를 사용하지 않으면 전체 행이 삭제됨
Last updated on