데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
안녕하세요. 궁금한게 있어서 질문드립니다.
현재 A라는 서버에 B라는 데이터베이스가 있고 그안에 C라는 테이블이 있는 상태이구요
X라는 서버에 C라는 테이블과 똑같은 Y 테이블을 만들어서 매일마다 테이블 정보를 C와 동기화시키고 싶습니다.
보통의 인사정보 연동하는것과 동일하다고보시면 됩니다.
결과적으로, X서버에서 C하고 100% 똑같은 테이블을 만들고, C테이블에서 수정/삭제등이 있다면, X서버의 Y테이블에도 반영되게끔 하고자 합니다.
여기서 몇가지 문의드립니다.
1.MS SQL 작업으로 매일 새벽에 C테이블의 모든행을 INSERT 시킬려고하면 분명 중복데이터 때문에 작업이 실패할텐데,
중복데이터를 제외하고 새로 추가되는 데이터만 INSERT 시키는 방법이있는지요?
2.1번방법이 불가할 경우, 새벽 작업을 걸때 Y테이블에 모든 데이터를 삭제하고, 다시 C의 모든 행을 Y로 INSERT 시켜서, 동일한데이터를 유지하는 방법도 생각하고 있는데, 이런 경우 문제가 될 부분이 있을까요?
SQL이 많이 부족하여 도움 요청드립니다.
감사합니다.
Comment 1
-
건우아빠
2017.04.18 21:02
1. not exists , outer join , merge 를 이용하시는 방법을 하시면 됩니다..