기능(SQL Server Compact)

SQL Server Compact 3.5은 스마트 장치 및 컴퓨터에 배포할 수 있는 소형 데이터베이스입니다. SQL Server Compact 3.5을 스마트 장치에 배포하려면 .cab 파일을 직접 복사하여 설치하거나 Microsoft Visual Studio 2008 서비스 팩 1(SP1)을 사용합니다. SQL Server Compact 3.5을 컴퓨터에 배포하려면 데스크톱 설치 관리자(SSCERuntime-ENU.msi) 또는 Microsoft Visual Studio 2010을 사용합니다.

SQL Server Compact 3.5에 대한 개발 지원은 스마트 장치 응용 프로그램의 경우 Visual Studio 2008 SP1에서 제공하고 데스크톱 응용 프로그램의 경우 Visual Studio 2010에서 제공합니다. 데이터베이스 관리 지원은 Microsoft SQL Server 2008 R2에서 제공합니다. SQL Server의 SQL Server Management Studio 또는 SQL Server Management Studio Express(SSMSE)를 사용하여 스마트 장치나 데스크톱 컴퓨터에 저장된 SQL Server Compact 3.5 데이터베이스에 액세스할 수 있습니다. SSMSE 사용자 인터페이스는 SQL Server Management Studio에 속합니다. SSMSE는 Microsoft 웹 사이트에서 무료로 다운로드할 수 있습니다.

참고

데스크톱용 응용 프로그램을 개발할 때는 Visual Studio 2010을, 스마트 장치 응용 프로그램을 개발할 때는 Visual Studio 2008 SP1을 사용하는 것이 좋습니다. Visual Studio 2010에서는 스마트 장치 응용 프로그램 개발을 지원하지 않습니다. 자세한 내용은 개발 환경 설치를 참조하십시오.

SQL Server Compact 3.5의 몇 가지 고유한 기능은 다음과 같습니다.

동기화

여러 가지 향상된 기능을 통해 SQL Server Compact 3.5에서 데이터를 복제하고 동기화하는 방법을 개선할 수 있습니다. 향상된 기능은 다음과 같습니다.

  • 여러 구독에 대한 지원

    SQL Server Compact 3.5의 이전 버전(버전 2.0 이하)에서는 각 데이터베이스에 대해 하나의 구독만 만들 수 있었습니다. 게시된 데이터가 여러 게시에서 파생되는 환경에서 개발자는 각 게시에 대해 별도의 구독 데이터베이스를 만든 다음 응용 프로그램에서 열어야 하는 데이터베이스를 지정해야 했습니다. 그러나 SQL Server Compact 3.5에서는 단일 데이터베이스에 구독이 여러 개 포함될 수 있으므로 필요한 프로그래밍 분량이 줄어듭니다. 여러 구독에 대한 자세한 내용은 여러 구독 지원을 참조하십시오.

  • 다중 사용자 지원 및 동기화

    SQL Server Compact 3.5에서는 다중 사용자 지원을 제공하므로 여러 응용 프로그램에서 같은 데이터베이스에 동시에 액세스할 수 있습니다. 다중 사용자 지원 기능을 통해 여러 명의 데이터베이스 사용자가 데이터베이스 연결을 끊지 않아도 병합 복제나 RDA(Remote Data Access)를 사용하여 데이터를 동기화할 수 있습니다. 다중 사용자 동기화에 대한 자세한 내용은 다중 사용자 액세스 및 RDA다중 사용자 액세스 및 동기화를 참조하십시오.

  • 동기화 진행 상태

    개발자는 관리되는 API를 사용하여 동기화 상태 피드백을 제공할 수 있습니다. 이 동기화 상태 피드백을 통해 사용자에게 동기화 진행률을 알려줄 수 있습니다. 상태 표시줄에 대한 자세한 내용은 비동기 데이터의 동기화를 참조하십시오.

  • 열 수준 추적

    이전 버전의 SQL Server Compact 3.5에서는 행에서 하나의 열만 수정해도 전체 행이 MicrosoftSQL Server와 동기화되었습니다. 따라서 행에서 수정되지 않은 열에 많은 데이터가 있으면 동기화 시간이 길어지는 경우가 자주 발생했습니다. SQL Server Compact 3.5 서비스 팩 1 이상 버전에서는 수정된 열만 동기화됩니다. 열 수준 추적에 대한 자세한 내용은 행 수준 및 열 수준 추적 사용을 참조하십시오.

저장소 엔진

SQL Server Compact 3.5에서 새롭게 향상된 저장소 엔진 기능은 모바일 응용 프로그램의 안정성 및 성능을 향상시킵니다. 향상된 기능은 다음과 같습니다.

  • 수정된 저장소 엔진

    각 응용 프로그램이 공용 메모리 풀을 공유하는 모바일 아키텍처를 최적화하기 위해 저장소 엔진 아키텍처가 다시 작성되었습니다. 진정한 ACID(원자성, 일관성, 격리성 및 내구성) 지원을 통해 장치에 배터리 전원이 없거나 연결이 끊기는 경우에도 보다 향상된 데이터 안정성을 보장합니다. 자세한 내용은 데이터베이스 엔진 개요(SQL Server Compact)를 참조하십시오.

  • 다중 사용자 지원

    여러 응용 프로그램에서 한 데이터베이스에 동시에 액세스할 수 있도록 SQL Server Compact 3.5에서는 데이터 페이지의 행 수준 잠금, 페이지 수준 잠금 및 격리 수준을 제공하여 동시성에 대한 데이터 무결성을 보장합니다. 잠금에 대한 자세한 내용은 잠금(SQL Server Compact)잠금 에스컬레이션을 참조하십시오.

  • 빈 페이지 자동 재사용

    SQL Server Compact 3.5에서는 자동 축소 기능을 지원합니다. 이 기능은 사용되지 않은 데이터 페이지를 자동으로 회수하여 장치 저장소 공간을 절약합니다. 자동 축소에 대한 자세한 내용은 데이터베이스 유지 관리(SQL Server Compact)를 참조하십시오.

쿼리 프로세서

SQL Server Compact 3.5 쿼리 프로세서의 향상된 기능은 다음과 같습니다.

  • 비용 기반 최적화

    쿼리 프로세서는 저장소 엔진의 통계 지원을 이용하여 현저하게 향상된 비용 기반 쿼리 계획을 만듭니다. 통계에 대한 자세한 내용은 데이터베이스 엔진 개요(SQL Server Compact)를 참조하십시오.

  • 실행 계획 및 쿼리 참고

    SQL Server Compact 3.5에서 개발자는 쿼리 계획을 보고 쿼리를 적절하게 구체화할 수 있습니다. 예를 들어 데이터베이스 디자인, 미디어 액세스 시간 또는 지원되는 특정 장치의 CPU 속도를 기반으로 쿼리 계획을 구체화할 수 있습니다.

  • 새로운 SqlCeResultSet 개체

    새로운 SqlCeResultSet 개체는 업데이트할 수 있는 스크롤형 커서를 제공하므로 개발자는 DataSet 개체를 사용하여 장치의 데이터를 두 번 버퍼링하지 않고도 SQL Server Compact 3.5 데이터베이스에 직접 액세스할 수 있습니다. 이 클래스는 동일한 태스크를 수행하는 데 필요한 코드의 분량을 줄이는 한편 DataSet 개체를 사용하는 경우보다 현저하게 향상된 성능을 제공합니다. 또한 WinForms 데이터 바인딩 인터페이스를 지원하며 DataGrid, TextBox, ListBox 등의 UI 컨트롤에 바인딩할 수 있습니다. 커서에 대한 자세한 내용은 커서(SQL Server Compact)System.Data.SqlServerCe 네임스페이스를 참조하십시오.

SQL Server와의 통합

SQL Server 엔터프라이즈 관리자와 SQL Server 쿼리 분석기를 대체하는 SQL Server 관리 도구인 SQL Server Management Studio를 사용하여 데스크톱 컴퓨터나 장치에서 SQL Server Compact 3.5 데이터베이스를 관리할 수 있습니다. 이 통합된 도구는 SQL Server에 연결했는지 아니면 SQL Server Compact 3.5에 연결했는지에 관계없이 동일한 사용자 환경을 제공합니다. SQL Server Compact 3.5 데이터베이스는 SQL Server Management Studio Express를 사용하여 관리할 수도 있습니다.

Management Studio 사용 시 이점은 다음과 같습니다.

  • 그래픽 쿼리 실행 계획

    그래픽 쿼리 실행 계획을 사용하여 개발자는 쿼리 실행 계획을 쉽게 확인할 수 있으므로 발생할 수 있는 쿼리 성능 문제를 더 잘 이해할 수 있습니다. 별도의 기능인 쿼리 힌트는 실행 계획의 일부 측면을 제어하는 데 사용할 수 있습니다.

  • 새 구독 마법사

    새 구독 마법사를 사용하면 사용자는 최소의 노력으로 구독 데이터베이스를 만들고 동기화할 수 있습니다. 자세한 내용은 새 구독 마법사를 참조하십시오.

  • 향상된 웹 동기화 구성 마법사

    SQL Server Compact 3.5에서는 향상된 버전의 웹 동기화 구성 마법사를 지원합니다. HTTPS 가상 디렉터리에 대한 유용성과 지원을 강화하기 위해 웹 동기화 구성 마법사의 기능이 향상되었습니다. 자세한 내용은 웹 동기화 구성 마법사 도움말을 참조하십시오.

  • SSIS와 통합

    개발자는 SSIS를 사용하여 SQL Server Compact 3.5 데이터베이스와 Microsoft Access, Oracle 및 IBM 데이터베이스 등 다양한 데이터 원본 간에 데이터를 전송할 수 있습니다. SSIS에는 대상 어댑터와 SQL Server Compact 3.5의 연결 관리자가 포함됩니다.

  • SQL 편집기

    Management Studio의 SQL 편집기 구성 요소는 Transact-SQL 문, 쿼리 및 스크립트를 대화형으로 디자인하고 테스트하는 기본 도구입니다. SQL 편집기에는 쿼리와 코드 작성 및 편집을 단순화하는 몇 가지 기능이 있습니다. 파일이나 개체 탐색기에서 만들어지는 스크립트를 편집할 수도 있습니다.

  • 데이터베이스 배포

    Management Studio 및 Management Studio Express에서 로컬 컴퓨터에 SQL Server Compact 3.5 데이터베이스를 만들 수 있습니다. 이러한 데이터베이스를 구성하고 데이터로 채운 다음 여러 장치에 데이터베이스를 배포할 수 있습니다. 이렇게 하면 개발 및 배포 시간이 현저하게 줄어듭니다.

병합 복제와 관련하여 SQL Server에서 향상된 일부 기능은 SQL Server Compact 3.5 응용 프로그램에 대해 다음과 같은 이점을 제공합니다.

  • 비즈니스 논리를 동기화하는 관리되는 API 액세스

    SQL Server는 SQL Server 데이터베이스에 비즈니스 논리 데이터를 저장하기 전에 개발자가 해당 데이터를 수정할 수 있는 관리되는 API를 제공합니다. 자세한 내용은 SQL Server 2008 R2 온라인 설명서에서 "병합 동기화 중 비즈니스 논리 실행"을 참조하십시오.

  • 다운로드 전용 아티클(테이블) 지원

    이 기능은 초기 동기화 중 전송되는 메타데이터의 양을 줄이고 개발자가 후속 동기화를 수행할 때 SQL Server에서의 처리 시간을 줄입니다. 자세한 내용은 병합 복제 소개게시 만들기을 참조하십시오.

  • 분할된(필터링된) 아티클 지원

    대부분의 모바일 응용 프로그램은 데이터를 필터링하여 사용자가 여러 장치에서 같은 데이터에 액세스할 수 없도록 합니다. 분할된 아티클 지원을 통해 개발자는 동기화 시간을 현저하게 줄이고 확장성을 향상시킬 수 있습니다. 이 기능은 많은 스마트 장치를 배포하는 데 특히 유용합니다. 분할된 아티클에 대한 자세한 내용은 게시 만들기을 참조하십시오.

Visual Studio와의 통합

SQL Server Compact 3.5와 Visual Studio의 통합과 관련하여 다음과 같은 기능이 향상되었습니다.

  • 데이터베이스 관리

    개발자는 Visual Studio 2010을 사용하여 데스크톱 컴퓨터에서 또는 Visual Studio 2008 SP1을 사용하여 지원되는 장치에서 SQL Server Compact 3.5 데이터베이스를 관리할 수 있습니다. 또한 SQL Server Compact 3.5 테이블을 응용 프로그램의 컨트롤로 끌어 해당 컨트롤이 테이블에 자동으로 바인딩되도록 할 수 있습니다.

  • SQL Server Compact 3.5 자동 설치

    Visual Studio를 사용하여 SQL Server Compact 3.5를 사용하는 Microsoft .NET 연결 응용 프로그램을 빌드하면 응용 프로그램을 처음 배포할 때 SQL Server Compact 3.5 엔진이 자동으로 장치에 설치됩니다. Visual Studio을 사용하여 네이티브 응용 프로그램을 빌드하는 경우에는 SQL Server Compact 3.5를 수동으로 설치해야 합니다. 자세한 내용은 스마트 장치 응용 프로그램 배포를 참조하십시오.

  • 데이터 디렉터리 지원

    DataDirectory는 데이터베이스 경로를 나타내는 대체 문자열입니다. DataDirectory를 사용하면 전체 경로를 하드 코딩하지 않아도 프로젝트 공유 및 응용 프로그램 배포를 손쉽게 수행할 수 있습니다. 예를 들어 다음 연결 문자열 대신

    "Data Source= c:\program files\MyApp\Mydb.sdf"

    아래와 같이 파이프 기호로 묶인 |DataDirectory|를 사용한 연결 문자열로 나타낼 수 있습니다.

    "Data Source = |DataDirectory|\Mydb.sdf"

    DataDirectory 속성은 AppDomain.SetData를 호출하여 AppDomain에서 설정할 수 있습니다.

  • 관리되는 응용 프로그램용 ClickOnce 배포

    ClickOnce는 관리되는 응용 프로그램을 컴퓨터에 배포하기 위해 SQL Server Compact 3.5에서 지원하는 새로운 소프트웨어 설치 기술입니다. ClickOnce를 통해 웹 서버나 네트워크 파일 공유에 Windows 기반 응용 프로그램을 간편하게 배포할 수 있습니다. 관리자의 경우 응용 프로그램 배포 또는 업데이트는 서버에 파일을 업데이트하는 것이며 사용자가 각 클라이언트를 개별적으로 업데이트할 필요가 없습니다. Microsoft Visual Studio 2010에서는 ClickOnce를 통해 배포되는 응용 프로그램의 게시 및 업데이트를 완벽하게 지원합니다. Visual Basic, Visual C# 및 Visual J# 을 사용하여 생성된 프로젝트에는 ClickOnce를 배포할 수 있지만 Visual C++를 사용하여 생성된 프로젝트에는 배포할 수 없습니다. 64비트 ClickOnce 배포에 대한 자세한 내용은 64비트 데이터베이스 응용 프로그램 관리를 참조하십시오.

참고 항목

관련 자료

새 구독 마법사 도움말

웹 동기화 구성 마법사 도움말

다중 사용자 액세스

트랜잭션(SQL Server Compact)

게시 구독(SQL Server Compact)

아티클에 필터 추가