2012-10-04 3 views
2

야간에 타사에서 다운로드 할 때 한 데이터베이스 (db1)에서 다른 데이터베이스 (db2)로 다운로드되는 데이터의 유효성을 검사하는 스크립트를 작성해야합니다.두 데이터베이스의 유효성을 검사하는 SQL 스크립트

db1은 db2가 정규화되어 있지 않습니다. 데이터는 1 대 1이어야하며 회사는 정보가 중요하고 정확해야하기 때문에 그 사실을 증명하기를 원합니다. 나는 이런 종류의 일을 결코 및 이전에 오라클을 사용한 적이

은 (MSSQL 내가 일반적으로 사용하는 것입니다) 그래서 궁금 :

  • 무엇이 가장 좋은 방법/모범 사례 코드가 현명한/문서 현명하다 ?
  • 오라클 사용시 알아 두어야 할 사항은 무엇입니까?

나는 주니어보다 좀 더 발전한 것으로 생각 하겠지만 몇 년 동안 만 SQL 개발을 해왔습니다. 그래서 당신이 생각할 수있는 다른 무엇이라도 커다란 도움이 될 것입니다.

+0

이 작업은 최종 사용자와 어떻게 상호 작용할 것입니까? 그것은 스케줄러를 실행하고 전자 메일을 보내거나 유효성 검사 결과를 일부 DB 테이블에 게시하거나 일부 네트워크 디렉토리 또는 FTP에서 결과를 덤프합니까? 펄 알아? 이것은 Perl을위한 완벽한 후보자처럼 보입니다 – amphibient

+0

나는 진주를 모른다. 스크립트의 결과는 필드가 일치하지 않는 곳을 표시해야합니다.이 필드는 Excel 시트에 덤프됩니다.이 작업의 최종 사용자는 스크립트이며 스크립트가 완료되면 아마 몇 번 실행됩니다. – kyle

+0

은 동일한 ORCL 서버에있는이 두 테이블입니까? 그렇다면 간단한 외부 조인 쿼리처럼 보입니다. – amphibient

답변

2

같은 쿼리를 사용할 수있는 또 다른 하나의 데이터베이스 스키마를 마이그레이션 할 때 나는 비슷한 상황이 있었다, 나는 DBA 스택 거래소에이 질문을 게시 :

Are there tools to perform data comparison between two different schemas?

SQL Server를 사용하고 있었지만 솔루션의 메커니즘이 유용 할 것입니다.

1

정확하게 이해하면 DB-2의 사용자 ID, 암호, TNS 서비스 이름과 같은 세부 정보가있는 데이터베이스 -1에 데이터베이스 링크를 만들고 쿼리에 @link_name으로 DB 링크를 사용하는 것처럼 간단 할 수 있습니다 Database-1에서 Database-2의 Object에 액세스합니다.

자세한 내용은 this을 참조하십시오.

당신이 그 자리에 DB 링크를 일단 당신이

select a.col1, b.col1 
    from table1 a, 
     [email protected] b --this is a table in Database-2 
where a.col2 = b.col2 
    .... 
    ....; 
관련 문제