2013-05-23 4 views
0

오늘 특정 테이블의 중복성을 검사하는 작업을 시작하려고했습니다.전체 데이터베이스에서 중복 레코드를 삭제하는 방법

나는 작업이 매 2 분에서 SQL에서 실행하고 테이블에서 중복을 삭제 한 테이블을 EmpDetails

Please find the screenshot to find the records in the table

enter image description here

있습니다.

Result of the job:

:

<code>Result of the job:</code>

But my expectations from the job are some bit higher, I want from the job to check the the redudancy from the whole database not from the single table.

이 사람이 나에게 제안시겠습니까, 그건 정말 가능 여부입니다. 가능한 경우 올바른 접근 방식이 무엇인지 파악해야합니다. 미리 감사드립니다.

+2

이다 EXEC sp_MSforeachdb을 사용할 수 있습니다 수있는 여러 DB 사용에 걸쳐 실행을 위해 먼저 중복이 무엇인지 정의해야합니다. 동일한 기본 키, 모든 열의 동일한 값, 최소한 두 개의 열, 기타 pp, 예외와 동일합니까? –

+0

첫 번째 스크린 샷을 클릭하면 id (1)이 두 번 반복되고 두 번째 이미지에서 내 작업이 중복 ID를 삭제하는 것을 볼 수 있습니다. –

+2

해결책은 중복을 삭제하는 데 더 나은 작업을하는 것이 아닙니다. 데이터베이스에서 적절한 제약 조건을 적용하여 중복을 처음부터 불가능하게 만듭니다. –

답변

0

먼저 복제본을 정의해야합니다. 그리고 데이터베이스를 통해 하나 루프 또는 문서화되지 않은 SP를

감사

관련 문제