목록DB/MySQL (2)
Java / Spring

개인 프로젝트에서 처음 네이티브 쿼리에 대해 알고 사용하게 되었다. 개인적으로 네이티브 쿼리의 경우 데이터베이스 종속적인 특성을 가지고 있기 때문에 사용을 지양하려고 했고, 프로젝트 내의 대부분의 쿼리는 ORM 기술을 사용하고 활용하는데 초점을 두고 있었다. 네이티브 쿼리의 장점복잡한 조인이나 서브쿼리를 작성할 때 유용데이터베이스에 최적화된 쿼리 작성 (개발자 의도대로 성능 최적화 및 튜닝 가능) 네이티브 쿼리의 단점 코드 가독성이 너무 떨어진다데이터베이스 종속적 (유지보수성 ↓)오타가 많이 발생한다MySql 에서 읽지 못하는 타입은 강제로 형변환을 해주야 한다. - 형변환을 하면서 로직이 더 복잡해진다(LocalDateTime -> TimeStamp) * 프로젝트에서 사용자에게 메일을 전송했을 때 ..

1) SET SQL_SAFE_UPDATES = 0; - mySQL 데이터베이스 사용 시 member 라는 테이블의 모든 행 데이터를 삭제하려고 delete from member; 쿼리를 실행하였는데 Error Code : 1175 메세지가 뜨면서 쿼리 실행이 안되는 현상이 발생 하였다. 이유는 mySQL 에서는 default 값으로 항상 안전모드(Safe Update Mode) 로 설정되어 있기 때문에 발생한다. 이 모드는 사용자가 의도치 않게 대량의 데이터를 삭제하거나 갱신하는 것을 방지 하기 위해 사용된다. 해당 값을 위의 1) 쿼리에서 0(false) 로 설정하면 delete 쿼리를 정상적으로 실행 할 수 있다. 2) id bigint auto_increment primary key (= oracl..