MySQL에서 연관 테이블로 구현 된 many-to-many 관계가 있습니다. 나는 아이들을위한 테이블과 부모를위한 테이블을 가지고있다. 자식은 parent_child_link 연관 테이블에 ID가있는 여러 부모를 가질 수 있습니다.PHP 업데이트 MYSQL many-to-many 관계
어린이는 HTML 양식을 통해 업데이트 할 수 있으며 부모는 HTML 다중 선택에 있습니다. 이제 데이터베이스의 레코드를 업데이트해야하지만 내 솔루션은 그리 효율적이지 않습니다. 여기에 내가 무슨 의사에 있어요 :
- 업데이트 child_id = X
- 이 parent_child_link에서 현재의 모든 연결을 삭제 자식 정보를 어디 child_id = X
- 삽입 새로운 협회
이 솔루션 위대한 작품이지만 부모가 바뀌지 않았을 때, 예. 하위의 이름 만 바뀌면 2 개의 불필요한 쿼리가 실행됩니다. 이러한 불필요한 쿼리는 어떻게 피할 수 있습니까? 여러 선택의 부모가 바뀌지 않았는지 확인하는 방법이 있습니까?
물론 나는이 모든 번거 로움을 무시할 수 있습니다. 이미 작동하기 때문에 가능한 한 효율적으로 유지하려고합니다.
이것은 일대일입니다. OP는 피벗 테이블과 다 대다 관계를 유지합니다. – lafor
당신의 오른쪽 라포, 내 잘못. –
응용 프로그램 레이어 외부로 옮기고 싶지만 참조가있는 솔루션이 내 문제를 해결하는 방법을 모르겠다. 지금까지 분석해 보았지만 링크를 제거하기 위해 하위 또는 상위를 삭제할 때 유용합니다. – EsTeGe