존재하는 부모만 확인하면 cycle도 정상 UPDATE가 된다

자기 참조 FK는 각 parent가 존재하는지만 검사하므로 마지막 간선이 루트를 자손 아래로 보내도 성공합니다.

개발 · 1

parent = NULL

백엔드 · 2

parent = 1

Spring · 3

parent = 2

잘못된 이동

parent(1) = 3 · FK는 통과

3이 1을 가리키면 1 → 2 → 3 → 1 순환

핵심: 새 부모 후보가 현재 노드의 자손인지 재귀 조회한 뒤 UPDATE해야 1→2→3→1 순환을 막을 수 있습니다.