#title 기본적인 사항들 [[TableOfContents]] ==== SELECT * 패턴 ==== 귀찮아도 'SELECT *' 쓰기보다는 '*'대신에 컬럼명을 써주는 것이 좋다. 왜냐하면 유지보수, 성능, 소스의 명확성등의 여러 측면에서 유리하기 때문이다. * '*'를 사용하면 DBMS에 저장된 컬럼 순서에 종속되어 DB Layer에서 컬럼 순서 변경시 응용 프로그램의 런타임 오류 발생 가능성이 있음. * '*'를 사용하면 상황에 따라서 필요 없는 컬럼도 전송되어 추가적인 부하가 발생함. * '*'를 사용하면 네트워크 패킷에 컬럼에 대한 정보도 패킷에 포함되어 전송되어 추가적인 부하가 발생함. * '*'를 사용하면 소스 분석 시 컬럼의 순서나 어떤 컬럼인지 알기 위해서 시스템 카탈로그를 검색해야 하므로 유지보수 비용이 증가함. 종합해보면 DBMS와의 높은 결합도에 의한 잠재적인 오류 발생 가능성과 유지보수 비용의 증가, 필요없는 데이터 전송이 '*'를 쓰지 말라는 이유가 된다. ==== IF EXIST(SELECT…) UPDATE… ELSE INSERT… 패턴 ====