다음을 통해 공유


SQL Server Native Client를 사용하는 경우

적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW)

Important

SNAC(SQL Server Native Client)는 다음과 함께 제공되지 않습니다.

  • SQL Server 2022(16.x) 이상 버전
  • SQL Server Management Studio 19 이상 버전

SQL Server Native Client(SQLNCLI 또는 SQLNCLI11)와 레거시 Microsoft OLE DB Provider for SQL Server(SQLOLEDB)는 새로운 응용 프로그램 개발에 권장되지 않습니다.

새 프로젝트의 경우 다음 드라이버 중 하나를 사용합니다.

SQL Server 데이터베이스 엔진(버전 2012부터 2019까지)의 구성 요소로 제공되는 SQLNCLI의 경우 이 수명 주기 예외 지원을 참조하세요.

SQL Server Native Client는 SQL Server 데이터베이스의 데이터에 액세스하는 데 사용할 수 있는 기술 중 하나입니다. 다양한 데이터 액세스 기술에 대한 자세한 내용은 데이터 액세스 기술 로드맵을 참조 하세요.

SQL Server Native Client를 애플리케이션의 데이터 액세스 기술로 사용할지 여부를 결정할 때는 몇 가지 요소를 고려해야 합니다.

새 애플리케이션의 경우 Microsoft Visual C# 또는 Visual Basic과 같은 관리되는 프로그래밍 언어를 사용하고 SQL Server의 새 기능에 액세스해야 하는 경우 .NET Framework의 일부인 .NET Framework Data Provider for SQL Server를 사용해야 합니다.

COM 기반 애플리케이션을 개발하고 SQL Server에 도입된 새로운 기능에 액세스해야 하는 경우 SQL Server Native Client를 사용해야 합니다. SQL Server의 새로운 기능에 액세스할 필요가 없는 경우 WDAC(Windows Data Access Components)를 계속 사용할 수 있습니다.

기존 OLE DB 및 ODBC 애플리케이션의 경우 주요 문제는 SQL Server의 새로운 기능에 액세스해야 하는지 여부입니다. SQL Server의 새로운 기능이 필요하지 않은 완성도 높은 애플리케이션이 있는 경우 WDAC를 계속 사용할 수 있습니다. 그러나 xml 데이터 형식과 같은 새로운 기능에 액세스해야 하는 경우 SQL Server Native Client를 사용해야 합니다.

SQL Server Native Client와 MDAC는 모두 행 버전 관리를 사용하여 커밋된 읽기 트랜잭션 격리를 지원하지만 SQL Server Native Client만 스냅샷 트랜잭션 격리를 지원합니다. (프로그래밍 측면에서 행 버전 관리가 있는 커밋된 읽기 트랜잭션 격리는 커밋된 읽기 트랜잭션과 동일합니다.)

SQL Server Native Client와 MDAC의 차이점에 대한 자세한 내용은 MDAC에서 SQL Server Native Client로 애플리케이션 업데이트를 참조하세요.

참고 항목

SQL Server Native Client 프로그래밍
ODBC 방법 도움말 항목
OLE DB 방법 항목