DetailPage-MSS-KB

기술 자료

기술 자료: 936223 - 마지막 검토: 2010년 2월 2일 화요일 - 수정: 2.0

 
(SQL 핫픽스) # 버그: 50001186

이 페이지에서

현상

다음과 같은 경우를 생각해 볼 수 있습니다. Microsoft SQL Server 2005 (SQLNCLI) SQL 네이티브 클라이언트 OLE DB 공급자를 사용하여 연결된 서버를 만듭니다. 연결된 서버에 Microsoft SQL Server 2000이 설치되어 있는 서버에 연결되어 있습니다. 연결된 서버에 대해 쿼리를 실행할 때 이 시나리오에서는 다음과 같은 오류 메시지가 나타납니다.
오류 메시지 1
메시지 8180, 수준 16, 상태 1, 줄 1
문은 준비할 수 없습니다.
오류 메시지 2
107 메시지, 수준 16, 상태 2, 줄 1
열 접두사 ' <column_prefix_name> ' 테이블 이름 또는 별칭을 쿼리에 사용된 이름이 일치하지 않습니다.


참고 이 문제는 SQL Server 2008의 경우에도 발생합니다. SQL Server 2008의 SQL Server 2000 서버에 연결할 때 이 문제가 발생하는 경우 4112이 이 문제를 해결하려면 추적 플래그를 설정해야 합니다. 자세한 내용은 "추가 정보" 절을 참조하십시오.

원인

원격 쿼리 실행 계획을 SQL Server 2005 생성하기 때문에 이 문제가 발생합니다. SQL Server 2005 필요한 데이터를 검색하기 위해 SQL Server 2000에 대해 원격 쿼리를 실행해야 합니다. SQL Server 2000의 원격 쿼리를 처리할 수 없습니다. 따라서 SQL Server 2000 107 오류가 발생합니다. 그런 다음 오류 107 SQL Server 2005로 다시 전파됩니다. 따라서 SQL Server 2005에서 107 오류가 발생하고 SQL Server 2005의 8180 오류가 발생합니다.

해결 방법

누적 업데이트 정보

이 문제점에 대한 수정 프로그램은 먼저 누적 업데이트 2 릴리스되었습니다. 이 누적 업데이트 패키지에는 SQL Server 2005 서비스 팩 2를 구하는 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
936305  (http://support.microsoft.com/kb/936305/LN/ ) SQL Server 2005 서비스 팩 2용 누적 업데이트 패키지 2
참고 빌드 누적되는 형태이므로 새로운 각 수정 릴리스의 모든 핫픽스와 들어 및 이전 SQL Server 2005에 포함된 모든 보안 릴리스의 수정. 이 핫픽스가 포함된 최신 수정 릴리스를 적용하는 것이 좋습니다. 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오:
937137  (http://support.microsoft.com/kb/937137/LN/ ) SQL Server 2005는 SQL Server 2005 서비스 팩 2가 릴리스된 후에 릴리스된 빌드
Microsoft SQL Server 2005 핫픽스가 특정 SQL Server 서비스 팩은 만들 수 있습니다. SQL Server 2005 서비스 팩 2 설치를 위해 SQL Server 2005 서비스 팩 2의 핫픽스를 적용해야 합니다. 기본적으로 SQL Server 서비스 팩에 제공된 모든 핫픽스는 다음 SQL Server 서비스 팩이 포함되어 있습니다.

해결 과정

이 문제를 해결하려면 Microsoft OLE DB 공급자에 대해 ODBC SQL Server 2000에 대해 연결된 서버를 만들 수 있습니다.

현재 상태

Microsoft는 "적용 대상" 절에 나열된 제품에서 문제가 있음을 확인했습니다.

추가 정보

SQL Server 2008 및 SQL Server 2005 SP2에 대한 누적 업데이트 패키지 (빌드 3175가) 모두를 소개하는 추적 플래그 4112. 누적 업데이트 패키지 (빌드 3175가) SQL Server 2005 SP2를 적용한 후 4112이 이 문제를 해결하려면 추적 플래그를 설정해야 합니다. SQL Server 2005에서 추적 플래그 사용 가능하게 설정하는 방법에 대한 자세한 내용은 다음 MSDN Microsoft 개발자 네트워크 웹 사이트의 "설명" 단원을 참조하십시오.
http://msdn2.microsoft.com/en-us/library/ms188396.aspx (http://msdn2.microsoft.com/en-us/library/ms188396.aspx)

문제를 재현하는 방법

  1. SQL Server 관리 Studio를 시작하고 SQL Server 2005 인스턴스를 연결하십시오.
  2. 새 쿼리 만들기 및 다음 문을 실행하십시오.
    EXEC sp_addlinkedserver
    @server = '<LinkedServerName>', 
    @provider = 'SQLNCLI', 
    @srvproduct = '', 
    @datasrc = '<InstanceName>', 
    @catalog = '<DatabaseName>' 
    
    exec sp_serveroption
    @server = '<LinkedServerName>' 
    ,@optname = 'RPC' 
    ,@optvalue = 'TRUE'
    exec sp_serveroption
    @server = '<LinkedServerName>' 
    ,@optname = 'RPC OUT' 
    ,@optvalue = 'TRUE'
    
    
    DECLARE @supervisorID varchar(40)
    set @supervisorID = 'Volume Discount'
    
    SELECT DISTINCT J.STOR_ID
    FROM   [<LinkedServerName>].[<DatabaseName>].DBO.DISCOUNTS J
    WHERE  J.DISCOUNTTYPE = @supervisorID
           AND J.DISCOUNT = (SELECT MAX(B.DISCOUNT)
                             FROM   [<LinkedServerName>].<DatabaseName>.DBO.DISCOUNTS B
                             WHERE  B.DISCOUNTTYPE = J.DISCOUNTTYPE)
    
    GO
    
    메모
    • <LinkedServerName>연결된 서버 이름에 대한 자리가 표시자입니다.
    • <InstanceName>연결된 서버 인스턴스 이름에 대한 자리가 표시자입니다.
    • <DatabaseName>데이터베이스 이름에 대한 자리가 표시자입니다.
이 문을 실행한 후 "현상" 절에서 설명한 오류 메시지가 나타납니다.

본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
키워드: 
kbmt kbsql2005engine kbexpertiseadvanced kbfix kbpubtypekc kbqfe KB936223 KbMtko
기계 번역된 문서기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.
이 문서의 영문 버전 보기:936223  (http://support.microsoft.com/kb/936223/en-us/ )
공유
추가 지원 옵션
Microsoft Community 지원 포럼
직접 문의하기
Microsoft Certified Partner 찾기
Microsoft Store