추가, 삭제, 수정, 쿼리는 TreeView를 통해 구현할 수 있습니다. 데이터베이스는 Access를 사용하고 작업은 OleDbHelper를 사용합니다.
데이터베이스 설명
클래스 ID
클래스 이름
클래스설명
parentId, 상위 번호, 최상위 수준은 0입니다.
sortId, 정렬 번호,
삭제하면 이 숫자보다 큰 모든 sortId가 1씩 줄어듭니다.
증가할 경우 최대 개수에 1을 추가합니다.
위로 이동할 때 sortId를 앞쪽과 교환하고 먼저 이미 앞쪽인지 확인합니다. 즉, 0인지 아닌지
아래로 이동할 때에는 sortId를 다음과 교환하고, 먼저 마지막인지 확인한다. 즉, childNum+1인지 여부
깊이, 깊이, 0이 최상위 수준입니다.
childNum, 자식 수, 0은 없음을 의미합니다.
작업 추가
1. 최상위 레벨인 경우 parentId=0, 깊이=0
sortId, 최대값 기준
2. 부모가 있으면 부모를 연산하고 childNum을 1 증가시킨다.
sortId, childNum+1 기준, 깊이는 상위 깊이+1
삭제 작업
1. 하위 클래스가 있는지 확인합니다. 즉, parentId = 현재 classId가 있으면 삭제할 수 없습니다.
2. 없으면 최상위 수준인지 확인합니다. 부모가 있으면 부모의 childNum이 1만큼 감소합니다.
sortId를 찾아 상위 sortId가 이보다 크면 1을 뺍니다.
확장하다