다음을 통해 공유


장치 및 데이터 액세스

업데이트: 2007년 11월

.NET Compact Framework에서 데이터에 액세스하는 응용 프로그램을 프로그래밍하는 경우 다음 사항을 고려해야 합니다.

  • .NET Compact Framework는 다음과 같은 클래스를 지원하지 않습니다.

    System.Data.OleDb 네임스페이스

    System.Data.SqlClient.SqlClientPermission 클래스

    System.Data.SqlClient.SqlClientPermissionAttribute 클래스

  • 장치의 크기 및 성능 고려 사항으로 인해 .NET Compact Framework는 다음 표에 나열된 기능을 지원하지 않습니다.

    지원되지 않는 기능

    설명

    연결 풀링

    장치에서 동시에 연결할 수 있는 SQL Server 인스턴스의 수는 제한되어 있습니다.

    분산 트랜잭션

    트랜잭션을 데이터베이스 또는 서버로 확장할 수 없습니다. 분산 트랜잭션 동안 System.Data.SqlClientInvalidOperationException을 생성합니다.

    장치 연결을 통한 연결

    SQL Server 인스턴스에 대한 TCP/IP 연결만 지원됩니다.

    암호화 연결

    SQL Server 인스턴스에 대한 암호화 연결은 지원되지 않습니다.

  • 다음과 같은 SqlConnection.ConnectionString 속성은 지원되지 않습니다.

    attachdbfilename

    max pool size

    connection lifetime

    min pool size

    connection reset

    network library

    encrypt

    pooling

    enlist

     

  • ANSI 데이터는 영어 장치의 SQL_Latin1_General_CP1_CI_AS 정렬에 대해서만 지원됩니다. .NET Framework의 모든 문자열은 유니코드입니다. System.Data.SqlClient는 .NET Framework의 Encoding 클래스를 사용하여 SQL Server의 ANSI 데이터를 유니코드로 변환합니다. .NET Compact Framework에서 Encoding 클래스는 지원되지만 모든 코드 페이지가 지원되지는 않습니다.

    또한 Windows CE .NET 기반 장치에 특정 ANSI 열에 대한 코드 페이지가 없으면 System.Data.SqlClient에서 해당 열에 대해 읽기 또는 쓰기를 수행할 수 없으며, ANSI에서 유니코드로 변환하는 코드 페이지가 없으면 System.Data.SqlClient에서 오류가 발생합니다. 특정 Windows CE .NET 기반 장치에 사용할 수 있는 코드 페이지에 대한 내용은 해당 장치 제조업체에 문의하십시오.

  • Windows 인증이 지원되지만 도메인 컨트롤러 내에서 인증에 사용되는 사용자 ID와 암호를 연결 문자열에 항상 지정해야 합니다.

  • Microsoft Windows CE 기반 장치에서 System.Data.SqlClient를 사용하는 응용 프로그램은 SQL Server 인증 대신 Windows NTLM(NT LAN Manager) 인증 프로토콜을 사용할 수 있습니다. 이렇게 하려면 연결 문자열에 다음 속성을 포함해야 합니다.

    Integrated Security=SSPI; User ID=DOMAIN\username; Password=********;

  • System.Data.SqlClient는 사용자 지정 포트에서 실행되는 SQL Server 또는 명명된 인스턴스의 포트 번호를 자동으로 검색할 수 없으므로 사용자 지정 포트에서 실행되는 서버에 연결하려면 다음과 같이 연결 문자열에서 쉼표 뒤에 포트 번호를 지정해야 합니다.

    Data Source=myServer\myInstance,3860, UserID=test; ...

참고 항목

기타 리소스

.NET Compact Framework의 데이터 액세스 및 XML 지원