다중 사용자 액세스

Microsoft SQL Server Compact에서는 SQL Server Compact 데이터베이스에 대한 단일 연결 또는 다중 연결이 허용됩니다.

SQL Server Compact 데이터베이스에 대한 다중 연결 액세스를 허용하면 개발 모델이 단순해집니다. 또한 SQL Server Compact데이터베이스 엔진에서는 다중 응용 프로그램의 동시 요청을 처리하거나 단일 응용 프로그램의 다중 연결 요청을 처리할 수 있으므로 개발자가 데이터베이스 액세스를 예약할 필요가 없습니다.

SQL Server Compact에서 데이터베이스에 대한 단일 연결 액세스만 허용한 경우에는 한 트랜잭션을 완료해야 다음 트랜잭션을 시작할 수 있으므로 동시성이 제한됩니다. SQL Server Compact에서는 서로 다른 데이터 집합을 수정하거나 액세스하는 여러 응용 프로그램을 동시에 실행할 수 있습니다. 데이터베이스의 특정 리소스에 대해 응용 프로그램 간에 데이터 경합이 거의 없는 경우 여러 응용 프로그램에서 데이터베이스에 액세스할 수 있도록 허용하면 동시성이 향상됩니다.

다음과 같은 방법으로 SQL Server Compact 데이터베이스에 액세스할 수 있습니다.

  • 단일 연결 - 단일 응용 프로그램에서 SQL Server Compact 데이터베이스에 단일 연결로 액세스해야 할 수 있습니다.

  • 다중 연결 - 단일 응용 프로그램에서 하나의 데이터베이스에 여러 연결을 설정하여 다양한 작업을 지원해야 할 수 있습니다.

  • 여러 응용 프로그램—여러 응용 프로그램에서 하나의 데이터베이스에 동시에 액세스할 수 있습니다. 개발자는 배타적인 연결을 관리할 필요가 없습니다. 사용자는 해당 데이터베이스에 다른 응용 프로그램이 연결된 상태에서 SQL Server Compact 쿼리 분석기와 같은 데이터베이스 도구를 사용할 수 있습니다.

응용 프로그램에서 단일 연결을 요구하고 다른 연결 또는 응용 프로그램이 동시에 데이터베이스에 액세스하는 것을 원치 않을 경우 데이터베이스를 배타적으로 열어서 다중 사용자 액세스를 허용하지 않을 수 있습니다. 배타적 연결에 대한 자세한 내용은 방법: 데이터베이스를 열 때 파일 모드 설정(프로그래밍 방식)방법: OLE DB를 사용하여 데이터베이스를 열 경우 파일 모드 설정(프로그래밍 방식)을 참조하십시오. 일부 64비트 플랫폼 시나리오에서는 이전 버전의 SQL Server Compact를 사용하여 데이터베이스 파일에 동시에 액세스할 수 없습니다. 64비트 구성 요소에 대한 자세한 내용은 64비트 데이터베이스 응용 프로그램 관리를 참조하십시오.

잠금은 동시성 제어 메커니즘으로 사용됩니다. 언제든지 둘 이상의 트랜잭션을 실행할 수 있지만, 잠금을 사용하면 모든 트랜잭션을 서로 완전히 격리된 상태로 실행할 수 있습니다. 자세한 내용은 잠금(SQL Server Compact)을 참조하십시오.

데이터베이스 동시 연결 수는 크기가 고정된 세션 테이블과 같이 사용 가능한 리소스의 수와 양에 따라 제한되며 허용되는 최대 동시 연결 수는 256개입니다.

중요

SQL Server Compact 4.0에서는 이제 가상 메모리 부족 오류 없이 전체 256개의 연결이 지원됩니다.

역할이나 권한이 지원되지 않습니다. 응용 프로그램 및 사용자는 이전 버전의 SQL Server Compact와 동일한 인증 및 권한 부여 절차를 사용하여 데이터베이스에 연결할 수 있습니다.