2016-11-08 8 views
0

데이터베이스가 있습니다.이 상황에서 진행 방법에 대한 조언이 필요합니다. Tasks라는 테이블이 있다고 가정합니다. 각 작업에는 해당 작업을 만든 사용자에 대한 정보를 저장해야하는 CreatedBy라는 속성이 있습니다.C# SQL Server - 사용자가 삭제되면 항목에 대한 사용자 정보 저장

예를 들어 해당 사용자의 ID를 저장할 수 있으며 작업을 가져올 때 특정 작업 Createdby 필드 값이 ID 대신 John Smith가되도록 사용자 정보를 가져옵니다. 지금까지 좋은 모든 것. 사용자 John Smith가 시스템에서 제거/삭제되었고 작업이 여전히 존재한다고 가정 할 때 시나리오를 처리해야하는 대상 또는 방법, 작업을 만든 사용자의 이름을 표시하려면 어떻게합니까? 나는 아직도 이드보다는 존 스미스를 보여줄 필요가있다.

+0

이름을 삭제하거나 적어 두지 마십시오. –

답변

2

이 경우 사용자 테이블에 '소프트 삭제'를 사용합니다. 사용자 테이블에 열을 추가하고 기본값을 1로하여 '활성'으로 이름을 지정하십시오. 사용자를 삭제하려면 값을 0으로 설정하십시오. 그러면 사용자에 대해 참조 무결성을 계속 적용 할 수 있습니다.

3

사용자를 삭제하는 대신 Active 열을 User에 추가 할 수 있습니다. John Smith가 계정을 삭제하는 대신 삭제하는 대신 Activefalse으로 설정합니다.

이것을 소프트 삭제라고합니다.