MySQL

[mysql][문제해결] You are using safe update mode

지각생 2022. 2. 22. 23:20
728x90

문제 발생

 

 

 


해결 방법

 

에러현상

Mysql에서 특정한 sql을 실행을 하는데, 아래와 같은 에러가 리턴됨.

Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect.

에러원인

테이블에서 키값을 이용한 update나 delete만을 허용하도록 되어 있는데, 그렇지 않게 좀더 넓은 범위의 sql을 적용하려고 할때 workbench에서 경고를 주는것임.
즉 하나의 레코드만을 update, delete하도록 설정되어 있는데, 다수의 레코드를 update나 delete하는 sql명령어가 실행되기 때문에 발생을 하는 것임.

해결방법1

아래와 같은 sql로 환경변수를 변경해준다. (일시적인 Safe모드 해제)
set sql_safe_updates=0;

해결방법2

Workbench Preferences에서 안전모드(Safe mode)를 해제한다.
아래의 그림에 있는 부분에서 체크를 해제한후에 다시 workbench를 시작한다.
(이렇게 하면 항상 Safe모드가 해제된 상태임)

 

 

 

 


 

원하던대로 다중 테이블 삭제 구현됨

728x90