Share via


분산 쿼리의 데이터 정렬

SQL Server 2005 는 여러 데이터 정렬을 지원합니다. 각 열마다 데이터 정렬이 다를 수 있으며 각 문자 값에 연결된 데이터 정렬 속성이 있습니다. SQL Server 는 원격 데이터 원본에서 제공된 문자 데이터의 데이터 정렬 속성을 해석하고 적절하게 처리합니다.

SQL Server 는 원격 데이터의 데이터 정렬을 유니코드 및 비유니코드 문자 데이터에 대한 비교 및 정렬 작업에 사용합니다. 원격 문자 데이터에 대한 데이터 정렬 정보는 데이터 원본이 SQL Server 의 인스턴스에 대응하는지의 여부에 따라 달라집니다.

  • Microsoft SQL 네이티브 클라이언트 OLE DB 공급자는 공급자가 반환하는 각 열에 대한 데이터 정렬을 자동으로 보고합니다.
  • SQL Server 에 없지만 데이터 정렬이 SQL Server 에서 지원하는 데이터 정렬 중 하나와 동일한 것으로 알려진 원격 테이블의 경우 관리자가 OLE DB 데이터 원본의 기본 데이터 정렬을 연결된 서버 정의의 일부로 지정할 수 있습니다. 그러면 SQL Server 는 기본 데이터 정렬을 연결된 서버에서 반환된 모든 열의 데이터 정렬로 사용할 수 있습니다.

SQL Server 가 원격 문자 열의 데이터 정렬을 결정한 후에 SQL Server 는 로컬 열에 대해서와 마찬가지로 원격 테이블 열에 대한 변환, 비교, 연산에 대해 동일한 규칙을 따릅니다. SQL Server 가 데이터 정렬에 적용하는 규칙 및 SQL Server 에서 지원하는 데이터 정렬 이름에 대한 자세한 내용은 데이터 정렬 작업을 참조하십시오.

기본 원격 데이터베이스의 데이터 정렬이 현재 로컬 데이터베이스의 데이터 정렬과 다르면 원격 문자열이 유니코드로 처리됩니다. 문자열이 모든 원격 서버에서 일률적으로 처리되도록 하려면 다음을 수행하십시오.

  • 유니코드 유형 N**'string'**을 사용하여 분산 쿼리에 문자열 리터럴을 지정합니다.
  • 기본 원격 데이터베이스에 의존하지 않고 명시적 대상 데이터베이스가 있는 연결된 서버를 정의합니다. 이 데이터베이스에는 다른 데이터 정렬이 있을 수 있습니다.

연결된 서버 옵션 정의

sp_serveroption을 사용하여 정의된 다음의 연결된 서버 옵션은 SQL Server 가 연결된 서버의 데이터 정렬을 사용할지 여부와 사용 방법을 제어합니다.

  • use remote collation 옵션은 원격 열 또는 로컬 서버의 데이터 정렬을 사용할지 여부를 지정합니다. true로 설정하면 SQL Server 데이터 원본에 원격 열의 데이터 정렬이 사용되고 SQL Server 가 아닌 데이터 원본에는 collation name에 지정된 데이터 정렬이 사용됩니다. false로 설정된 경우 분산 쿼리가 항상 로컬 서버 인스턴스의 기본 데이터 정렬을 사용하며 collation name 및 원격 열의 데이터 정렬은 무시됩니다.

  • collation name 옵션은 use remote collationtrue이고 데이터 원본이 SQL Server 데이터 원본이 아닌 경우에 원격 데이터 원본에서 사용하는 데이터 정렬의 이름을 지정합니다. 이름은 반드시 SQL Server 에서 지원하는 데이터 정렬 중 하나여야 합니다. SQL Server 이외의 OLE DB 데이터 원본에 액세스하지만 데이터 정렬이 SQL Server 데이터 정렬 중 하나와 일치할 경우 이 옵션을 사용합니다. SQL Server 데이터 원본은 해당 열 데이터 정렬을 보고하고 SQL Server 데이터 원본을 참조하는 연결된 서버에 대해 데이터 정렬 이름은 무시됩니다.

    [!참고] 원격 데이터 정렬을 사용할 수 있도록 설정하는 유일한 방법은 연결된 서버 옵션을 사용하는 것입니다. 따라서 OPENROWSET 및 OPENDATASOURCE에서 제공한 임의 이름을 사용하도록 구성된 쿼리에서는 원격 문자 데이터의 데이터 정렬 정보를 사용할 수 없습니다. 또한 SQL Server 2000 이상으로 업그레이드된 SQL Server 버전 7.0에서 연결된 서버는 모두 use remote collation=false로 설정됩니다.

옵션 설정 요약

다음 표에서는 use remote collationtrue 또는 on으로 설정되어 있는 경우 SQL Server 에서 각 열에 사용되는 데이터 정렬을 결정하는 방법을 요약합니다.

연결된 서버 유형 데이터 정렬 이름이 설정되어 있지 않은 경우 데이터 정렬 이름이 설정되어 있는 경우(CollX)

SQL Server

원격 열의 실제 데이터 정렬

원격 열의 실제 데이터 정렬

기타

SQL Server 로컬 인스턴스의 기본 데이터 정렬

CollX

다음 표에서는 use remote collationfalse 또는 off으로 설정되어 있는 경우 SQL Server 에서 각 열에 사용되는 데이터 정렬을 결정하는 방법을 요약합니다.

연결된 서버 유형 데이터 정렬 이름이 설정되어 있지 않은 경우 데이터 정렬 이름이 설정되어 있는 경우(CollX)

SQL Server

SQL Server 로컬 인스턴스의 기본 데이터 정렬

SQL Server 로컬 인스턴스의 기본 데이터 정렬

기타

SQL Server 로컬 인스턴스의 기본 데이터 정렬

SQL Server 로컬 인스턴스의 기본 데이터 정렬

참고 항목

개념

분산 쿼리

관련 자료

SQL 데이터 정렬 사용
데이터 정렬 옵션 및 국가별 지원

도움말 및 정보

SQL Server 2005 지원 받기