사용자 도구

사이트 도구


database:sqlantipatterns

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
database:sqlantipatterns [2011/11/27 16:53]
kwon37xi [반올림 오류]
database:sqlantipatterns [2016/09/24 15:16] (현재)
kwon37xi
줄 285: 줄 285:
 Java로 설명하면 Controller는 Service를 호출하고 Service에서 DAO를 호출해야 한다. Controller에서 DAO를 직접 호출되면 안된다. Java로 설명하면 Controller는 Service를 호출하고 Service에서 DAO를 호출해야 한다. Controller에서 DAO를 직접 호출되면 안된다.
 이 원칙을 액티브 레코드를 사용하는 MVC 프레임워크에서도 그대로 적용하며 Controller에서 ActiveRecord의 데이버테이스 접근 메소드를 직접 호출하지 말고 중간 모델 객체(서비스 객체)를 두라는 의미이다. 이 원칙을 액티브 레코드를 사용하는 MVC 프레임워크에서도 그대로 적용하며 Controller에서 ActiveRecord의 데이버테이스 접근 메소드를 직접 호출하지 말고 중간 모델 객체(서비스 객체)를 두라는 의미이다.
 +
 +====== 책 외의 다른 정보 ======
 +
 +===== EXIST()를 사용할 곳에 COUNT() 사용금지 =====
 +  * [[https://blog.jooq.org/2016/09/14/avoid-using-count-in-sql-when-you-could-use-exists/|Avoid Using COUNT() in SQL When You Could Use EXISTS()]]
 +  * ''exists()''로 존재만 검사할 때는 첫번째 존재에서 바로 ''true''를 리턴하면 되지만 이걸 ''count()''로 하면 전체 데이터를 모두 훑어야 하므로 당연히 느리다.
database/sqlantipatterns.1322380387.txt.gz · 마지막으로 수정됨: 2011/11/27 16:53 저자 kwon37xi