Modeling/UML

인프런 - RDBMS Modeling 실습 2일차 (챕터 3,4 )

bluebamus 2023. 7. 5.

3. 시도 시군구 저장프로시저 만들기

1. 저장 프로시저는 기본적으로 CURD와 관련된 것들은 필수적으로 만들게 된다.

   * 개인적인 생각으로 CU는 race condition 문제를 피하기 위해 만드는 것이 방법이라 생각한다.

2. 두개 이상의 레코드를 선택하는 select에서 order는 정말 중요하다. 필수 조건이다.

* 저장 프로시저의 문법은 강의에 없다. 하지만 관련한 강의 중 팁들은 있다. 개인적으로 이해하는데 어려움이 없고 중요도가 낮다 생각해 기록하진 않는다.

3. 저장 프로시저에서 여러 테이블을 사용하다보면 join을 많이 사용해야 한다. 하지만 이 경우, Table view를 이용하면 많은 양의 join 문을 작성하는 것 보다 쉽게 저장 프로시저를 작성하고 사용할 수 있다.

4. 강사의 의도는 All과 관련된 프로시저로 전체 지역 상위 주소를 가져오게 되면 스크롤 버튼박스 등의 UI로 사용자는 자신이 원하는 주소를 선택하게 되고 이것은 선택된 정보그룹만 가져오는 프로시저를 통해 관련된 상위 지역에 포함되는 하위 지역 그룹들을 그리드에 출력하게 된다는 것이다.

5 이러한 저장 프로시저들을 제공하는 것은 개발자의 CURD 개발 코드를 줄이고, 테이블간 복잡한 관계 기반의 CURD 개발 쿼리 작성에 대한 오류 작성을 방지하고, 트랜잭션의 격리 등을 제공할 수 있다.

 

4. Company 뷰, 저장함수 만들기

1. join을 만들때 left out join을 할거냐 inner join을 할거냐의 결정은 해당 키가 현재 기준이 되는 테이블에서 not null이면 inner join을 사용하고 null이면 left out join을 해야 데이터가 빠지지 않는다.

   - 부모 자식 관계에서는 inner join을 무조건 사용한다.

 

 

 

 

댓글