증상
다음과 같은 경우를 생각해 볼 수 있습니다.
-
Microsoft SQL Server 2008 R2에 연결 된 서버가 있습니다.
-
연결 된 서버의 테이블에는 SMALLDATETIME 형식 열이 있습니다.
-
삽입 또는 삽입 INTO 문을 실행 하 여 DATETIME 형식 데이터를 포함 하는 레코드를 테이블에 삽입 합니다.
이 시나리오에서는 문이 실패 합니다. 또한 다음과 같은 오류 메시지가 나타납니다.
연결 된 서버 "Linkservername "에 대 한 OLE db 공급자 "SQLNCLI10"에서 "여러 단계의 ole db 작업에 오류가 발생 했습니다." 라는 메시지가 반환 되었습니다. 가능한 경우 각 OLE DB 상태 값을 확인 합니다. 작업이 완료 되지 않았습니다. " 메시지 7344, 수준 16, 상태 1, 줄 1The OLE DB 공급자 "SQLNCLI10"이 (가) "ColumnName" 열 때문에 연결 된 서버 "linkservername"의 테이블 "TableName" 에 삽입할 수 없습니다. 데이터 값이 공급자가 사용 하는 데이터 형식을 오버플로 했기 때문에 변환에 실패 했습니다.
원인
이 문제는 SQL Server의 데이터 형식 매핑 문제 때문에 발생 합니다.
해결 방법
누적 업데이트 정보
SQL Server 2008 R2 서비스 팩 2
이 문제에 대 한 픽스는 먼저 누적 업데이트 3에서 릴리스 되었습니다. SQL Server 2008 R2 서비스 팩 2 용 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 다음 문서 번호를 클릭 하 여 Microsoft 기술 자료 문서를 참조 하세요.
2754552 SQL Server 2008 R2 서비스 팩 2 용 누적 업데이트 패키지 3참고 빌드가 누적 되므로 새로운 각 수정 릴리스에는 이전 SQL Server 2008 R2 서비스 팩 2 수정 릴리스에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. 이 핫픽스를 포함 하는 최신 픽스 릴리스를 적용 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
2730301 SQL Server 2008 R2 서비스 팩 2 이후 릴리스된 SQL Server 2008 R2 빌드가 릴리스 되었습니다.
상태
Microsoft는 "적용 대상" 절에 나열한 Microsoft 제품에서 이 문제를 확인했습니다.
해결 방법
이 문제를 해결 하려면 다음 방법 중 하나를 사용 합니다.
-
DATETIME 형식 데이터를 문의 SMALLDATETIME 형식으로 캐스팅 합니다.
-
SMALLDATETIME 형식 열을 연결 된 서버의 DATETIME 형식으로 변경 합니다.