관리 메뉴

JIE0025

[SQL] Error 1093 : MySQL에서 수행 시 자신테이블의 데이터 사용불가 본문

백엔드/이슈, 트러블슈팅

[SQL] Error 1093 : MySQL에서 수행 시 자신테이블의 데이터 사용불가

Kangjieun11 2020. 2. 19. 17:02
728x90

 

mp_reply 테이블에 column각각에 데이터를 넣어주려고 테스트로 쿼리를 하나 작성하였다. 

게시판 게시글 고유번호인 bno에 reply의 고유번호인 rno를 자동할당해주는 쿼리이다.

rno의 max값이 null값일 경우엔 0으로 초기화 해주고, 1을 더해주어서 다음 reply고유 값을 설정해준다.

 

그러나 뜻대로 되지 않고 오류가 발생하였다.

SQL Error [1093] [HY000]: (conn=20) Table 'mp_reply' is specified twice, both as a target for 'INSERT' and as a separate source for data

 

 

1093 error는 MySQL에서 자기 테이블의 데이터를 바로 사용하지 못하여서 생기는 오류이다. 

 

이는 서브쿼리의 결과를 임시 테이블로 만든 후 실행하면 해결 할 수 있다.

 

 

이렇게 변경시 정상적으로 작동하는 것을 확인 할 수 있다.