언어공부/SQL

[21.09.30] mariaDB primary key 오류 해결하기

zzerou 2021. 9. 30. 20:04

오랜만에 작성하기

 

수업을하다가 전과 다른 작업을 하기 시작했다. 하다가 새로운 데이터를 집어넣는 부분에서 Board라는 테이블을 만드는데 저번 수업에서 만든 테이블과 겹쳐 오류가 만들어졌다. 

 

기본적으로 기존의 테이블을 삭제하기 위해서는 " drop table 테이블명; " 이렇게 만들어진다.

하지만 내 경우에는 이게 통하지 않았다는 거.

Cannot delete or update a parent row: a foreign key constraint fail

이라는 오류가 떴다. 

 

소올찌키 다른 페이지를 찾으러다녔지만. 배움이 짧은터라 이해도 잘 못하기도 했고 나의 문제가 해결되지도 않았다.

 

일단 저러한 문제가 생긴것은 내가 과거에 데이터를 만들면서 데이터/테이블 마다 각각의 관계를 맺어놨다. 

나의 기준으로.. 그렇다고

과거의 나는 Board테이블이 Comment라는 테이블과 서로 1:N이라는 관계를 가지고 있고(당연히  Board가 1)

Comment라는 테이블이 Board에서 정보를 가져오기때문에 내가 Board를 지우려면 Comment테이블을 먼저 삭제해야한다는거.

+) 위와 같이 Board와 Comment는 서로 1:N이라는 가지고 있다. 그리고 Board에는 1,2,3이라는 데이터를 가지고 있을때 Comment에는 '4'라는 데이터사용하지 못한다. 왜냐고? 정보를 Board에서 가져와서 사용하는데 Board에는 4라는 데이터가 없으니까. 하지만 Comment에 1,2,3,3,3 이라는 데이터는 존재할 수 있다. 왜냐면 아까와 같은 이유로. 

 

마지막으로 

drop table Comment;

drop table Board;

이 수식을 넣어줌으로써 문제를 해결했다.