테이블 A가 테이블 B를 참조하고 테이블 B가 테이블 C 열을 참조하는 시나리오가 있습니다.TSQL에서 전문가의 제안이 필요합니다.
프로젝트에서 업데이트 작업을 구현하려면 2 단계 로직 에서 구현해야합니다. 즉, 먼저 행을 삭제하고 최신 항목을 다시 추가해야합니다.
하지만 불행히도 테이블 A의 행을 삭제하려고하면 다른 테이블을 참조하는 참조가 생깁니다. 따라서 삭제와 추가에 대한 나의 논리는 항상 적절한 방식으로 작동하지 않습니다. 그것이 삭제되고 다시 추가 되더라도, 그것이 추가되는 순서는 마지막으로, 즉 새로운 레코드로서 존재한다. 따라서 이전의 모든 참조 트랙을 이전과 동일한 순서로 잃어 버리고 있습니다.
따라서 테이블에서 레코드를 삭제하고 싶습니다. 즉, 참조를 무시하도록 허용해야하는 시간에 대한 참조 즉, 레코드를 다시 추가하면 레코드를 업데이트 한 다음 참조를 다시 적용하거나 다시 활성화해야합니다. .
이렇게 할 수 있습니까? 또는 다른 논리가 유사한 방식으로 작동하거나 원래의 의도를 대체 할 수 있습니까? 아무도 이것에 당신의 전문 기술 통보를 제공 할 수 있 었는가?
Windows 서비스 팩의 일반적인 논리는 어떻게 작동합니까? 어느 누구도 그것에 대해 자세히 설명 할 수 있습니까? 같은 정보에 관한 정보 나 의사 또는 블로그를 공유 하시겠습니까?
정말 고마워요. 감사합니다, Shyam
최상위 테이블의 레코드가 활성화 또는 비활성화 (1 또는 0)되었음을 나타내는 비트 열을 추가 할 수 있습니다. 그런 다음 몇 시간 후에 예약 된 작업을 실행하면 다른 테이블의 해당 하위 레코드와 함께 해당 레코드를 정리할 수 있습니다. 이를 위해서는 아래에서 위로 시작하고, 가장 낮은 수준의 테이블에서 시작하여 외래 키 제약 조건에 부딪치지 않도록해야합니다. –
"프로젝트에서 업데이트 작업을 구현하려면 2 단계 논리로 구현해야합니다. 즉, 먼저 행을 삭제하고 최신 항목을 다시 추가해야합니다."일반적으로 나쁜 생각처럼 들립니다. 정말 좋은 생각이고, 사람들이 이것을 지원하는 답변을 제공하기를 원한다면, 왜 이런 일을하는지 설명하기 위해 게시물에 더 많은 세부 사항을 추가해야하며 다른 사람들에게 이것이 최선의 방법이라고 확신시켜야합니다. – mbeckish