데이터베이스 디자인과 관련된 질문이 있습니다. 으로 작업하고있는 데이터베이스는 데이터가 물리적으로 결코 삭제되지 않도록 어떤 방식 으로든 처리해야합니다. "DeleteDateTime"열을 일부 테이블에 추가하는 경로가 시작되었는데 기본적으로 NULL이지만 스탬프를 지정하면 삭제 된 레코드로 표시됩니다.SQL Server (2005) - DATETIME 및 인덱싱에서 "Deleted On"
이 방법을 사용하면 데이터를 쉽게 보관할 수 있지만 몇 가지 영역, 특히 의 경우 어둠 속에서도 이것이 모범 사례와 함께 고려되는지 여부와 이러한 테이블을 효율적으로 인덱싱하는 방법에 대해 생각할 수 있습니다.
"SiteID"와 "CourseID"열로 구성된 복합 기본 키가있는 "Courses"테이블이 있습니다. 이 테이블에는 위의 설명에 따라 사용되는 "DeleteDateTime"이라는 열이 있습니다.
SQL Server 2005와 호환되어야하므로 SQL Server 2008에서 필터링 된보기 기능을 사용할 수 없습니다. 이 테이블의 클러스터 된 인덱스에 "DeleteDateTime"을 포함해야합니까? 그렇다면 색인의 첫 번째 열 (예 : "DeleteDateTime, SiteID, CourseID") ...
이 접근 방식을 따라야하는 이유는 무엇입니까?
감사합니다.
DATETIME 필드와 BIT 필드를 함께 사용하는 것은 삭제 작업이 언제 발생했는지 알기 때문에 중요합니다. –