2012-09-27 2 views
1

매우 단순한 버그 추적 시스템을 만들고 있다고 상상해보십시오. 나는 각 개별 버그의 역사는 저장되도록,이 테이블에 버전을 추가 할 찾고 있어요기존 데이터베이스 테이블을 수정하여 버전 관리 추가하기

ID Title   Details   CreatedDate 
1 someTitle  someDetails  26/09/2012 
2 otherTitle  otherDetails 27/09/2012 

: 나는 데이터베이스에 현재이 같은 형태의 버그 목록을 가지고있다. 나는 이런 식의 생각 : 여기

ID BugID CreatedDate 
1 1  26/09/2012 
2 3  26/09/2012 


BugID Title   Details   RevisionGroup 
1  someTitle  someDetails  1 
2  otherTitle  otherDetails  2 
3  otherTitle  changedDetails 2 

나는 두 번째 테이블에서 버그의 최신 버전으로 연결하는 첫 번째 테이블, 버그 목록을 가지고있다. revisionGroup 열은 아무 것도 연결되지 않았으므로 현재 최대 값을 가져오고 새 버그를 삽입해야 할 때 증가합니다.

내 데이터베이스 디자인이 상당히 불안정하지만이 문제에 대해 생각해보고 제대로 작동해야한다고 생각합니다. 이게 가장 좋은 방법 인 것처럼 보이나요? 더 좋은 방법이 있습니까? 그냥 최신 버그를 원하기 때문에

답변

1

니스 질문 형식 :

음, 왜 버전 대신에 타임 스탬프를 넣지. 새로운 버그를 입력하고 마지막 버전을 찾을 때 수행 할 추가 쿼리를 하나 저장하면됩니다. 비즈니스 규칙에 버전 번호 요구 사항이 명시되어 있지 않은 한 나는 당신이 그렇다고 말하지 않았다고 믿는다. 당신의 현재 디자인에 다른 문제는 보이지 않는다.

데이터베이스를 설계 할 때 항상 기억하십시오 ... 프로세서를 사용한 계산은 모든 디스크 I/O보다 훨씬 빠릅니다. 가능한 경우 추가 읽기/쓰기를 피하고 피할 수 있어야합니다.

행운을 빈다.

관련 문제