안녕하세요.
몇가지 궁금한게 있어서 이렇게 질문을 올립니다.
제가 델파이4와 ms sql 2000을 가지고 엑셀파일에 있는 자료를 데이타베이스에 넣는 간단한 프로그램을
넣었는데 이렇게 만든 프로그램이 잘 돌아가서 거래처에 배포해 주었습니다.(거래처는 db가 ms sql 6.5 입
니다.)-사정상 저희가 거기에 직접 갈 수도 없고 같은 버전의 db를 구할 수도 없어서 이렇게 환경이 틀릴 수밖에
없었습니다.
거래처에서 실행을 하니 아무 문제가 없이 돌아가던 것이 중복값이 있다고 에러가 뜬다고 합니다.
분명히 저희에서 넣은 자료와 동일한 자료를 넣고 있는데 그러한 문제가 난다고 연락이 왔습니다.
자료도 약 300여개 밖에 되지 않는 것인데 ...
제가 ms sql 6.5란 것을 잘 몰라서 이런 에러가 나는 것 같은데 ms sql이 버전에 따라 어떤 특성이
있는 것인지 답변 부탁드립니다.
6.5와 2000의 특성보다는 키값의 중복때문입니다.
거래처의 테이블구조를 살펴보시고 키중복의 가능성을 제거하십시요.
동일한키값이 있는 경우 Update로 처리하시고 없는 경우에만 insert하시구요.
(당연히 하셨겠지만) 테이블단위로 이식하는 경우 schema에 시스템이 부여하는
autoincrement컬럼(identity)등이 있는지 고려하여야 하여야 합니다.
(테이블 재이식할때 autoincrement특성이 죽는 사례가 종종 있습니다.)
Marek