My Space

ERROR 1093(MySQL)

2022. 2. 5. 17:59
반응형

원인

: Oracle와 달리 MySQL은 UPDATE, DELETE 쿼리문 수행시,

자기 자신의 테이블 데이터를 바로 사용하지 못하게 되어있다.

 

즉, 아래와 같을때 1093 에러 발생.

INSERT INTO BOARD (TITLE, CONTENT, PARENT) VALUES
('제목', '내용', (SELECT ID FROM BOARD WHERE TITLE = '제목'));
MySQL Error 1093 : You can't specify target table

 

해결방법

: 어쩔 수 없이 자신의 데이터를 이용해야 하는 경우, Sub Query 사용

INSERT INTO BOARD (TITLE, CONTENT, PARENT) VALUES
('제목', '내용', (SELECT ID FROM (SELECT ID FROM BOARD WHERE TITLE = '제목') A) );

 

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading