database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 1835 게시물 읽기
No. 1835
oracle --> mssql로 데이터 가져오기 실행시
작성자
이석규
작성일
2005-03-22 11:29
조회수
3,873

DTS 이용으로 Oracle에서 Mssql로 데이터를 가져오기를 하였습니다.

첨에는 mssql서버에 테이블이 없을 경우에는

oracle 테이블을 자동으로 mssql서버에 테이블이 생성이 되었습니다. 데이터로 잘 들어갔고요...

근데 mssql서버에 pk가 안 잡힌 상태로 테이블이 생성이 되더라고요

제가 알아봤는데 pk는 생성이 안된다고 합니다.

그래서 테이블을 드랍하고 pk를 잡아서 테이블을 생성후

oracle의 데이터를 가져올려고 할때

oracle 테이블의 마지막 행에서 에러가 납니다.

"PRIMARY KEY 제약조건을 위반했습니다. Table 객체에 중복키를 삽입할 수 없습니다"

라고 메세지가 출력되고 데이터는 입력되지 않습니다.

특정 테이블에 한 해서면 그렇고 다른 테이블은 잘 됩니다.

 

고수님들의 빠른 답변 부탁드립니다.

이 글에 대한 댓글이 총 2건 있습니다.

추측컨대 에러 메시지가 의미하는 그대로라고 생각합니다..

추가하면, NULL에 대한 데이터취급의 방법이 ORACLE과 MSSQL에서 차이가 있는 걸로 알고 있습니다만..

 

제가 확인한 바로는 UNIQUE제약에서 ORACLE은 NULL이 복수로 들어갈 수 있지만, MSSQL에서는 NULL 데이터 역시 중복되어 들어갈 수 없습니다..

 

pk를 잡지말고 mssql로 전부 데이터를 가져온 다음, pk 제약칼럼을 대상으로 복수 레코드를 뽑아보세여~

select group by (pk 대상칼럼) having count(pk 대상칼럼) > 1

 

그럼..

길가는 나그네..님이 2005-03-22 11:54에 작성한 댓글입니다. Edit

길가는 나그네님 답변 감사합니다.

님이 주신대로 찾아보니깐 데이터에 문제가 있더라고요

ms-sql에선 대소문자 구별이 없는거 같습니다.

테이블 생성시 옵션을 찾아서 처리해 보겠습니다.

답변 진심으로 감사드리며

즐거운 하루 되세요

 

이석규님이 2005-03-22 13:40에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1838index를 선택하는 방법이 있나요... [1]
dba
2005-03-23
3039
1837ms-sql datetime 데이터형에 대한 질문입니다. [1]
텅날개
2005-03-22
3001
1836테이블 레벨로 대소문자 구별을 줄수 있나요??? [1]
이석규
2005-03-22
2921
1835oracle --> mssql로 데이터 가져오기 실행시 [2]
이석규
2005-03-22
3873
1834mssql -> 오라클 마이그레이션 결과... [1]
오라클
2005-03-22
2573
1833오라클로 된 sql를 ms/sql로 전환 하는데 도움 부탁합니다. [1]
수경
2005-03-21
3284
1832ms-sql 디비서버 내리고 올리는 방법 좀 알려주세요 [1]
ms초보
2005-03-21
2504
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다