임시 데이터베이스

Microsoft SQL Server Compact에서는 다음과 같은 임시 데이터 저장에 사용할 임시 데이터베이스를 만듭니다.

  • 쿼리하는 동안 생성되는 임시 결과 집합

  • ORDER BY, GROUP BY 또는 DISTINCT 절을 실행할 때 생성되는 임시 정렬 테이블

임시 데이터베이스는 만들도록 명시적으로 지정한 경우에만 생성됩니다. 임시 데이터베이스의 이름은 엔진을 시작할 때 지정해야 합니다. 데이터베이스 엔진을 종료하면 임시 데이터베이스가 제거됩니다. SQL Server Compact 응용 프로그램을 비정상적으로 종료하면 임시 데이터베이스 파일이 시스템에 남게 됩니다. 이러한 파일은 수동으로 제거해야 합니다.

임시 데이터베이스의 위치

대형 임시 데이터베이스를 사용해야 하는 작업을 수행하려면 임시 데이터베이스를 생성할 위치를 명시적으로 지정해야 합니다. 임시 데이터베이스 위치를 지정하지 않으면 임시 데이터베이스의 위치로 현재 데이터베이스 위치가 사용됩니다. 임시 데이터베이스의 이름은 지정하지 않습니다. 파일 이름은 SQLCE334241234.tmp와 같이 "SQLCE"로 시작합니다.

임시 데이터베이스의 위치는 엔진을 시작하기 전에 지정해야 하며 엔진을 실행하는 동안에는 변경할 수 없습니다. 데이터베이스를 압축할 때 임시 데이터베이스의 위치를 변경할 수 있습니다. 자세한 내용은 데이터베이스 유지 관리방법: 데이터베이스 압축(프로그래밍 방식)을 참조하십시오.

위치 지정

데이터베이스에 대한 연결 문자열에 temp path, temp file directory 또는 ssce:temp file directory 매개 변수를 사용하여 임시 데이터베이스의 위치를 지정합니다.

참고

임시 데이터베이스용으로 지정한 위치는 이미 존재하는 위치여야 합니다.

자세한 내용은 방법: ADO.NET을 사용하여 임시 데이터베이스의 위치 지정(프로그래밍 방식)방법: OLE DB를 사용하여 임시 데이터베이스 위치 지정(프로그래밍 방식)을 참조하십시오.

SqlCeConnection 개체에 연결 문자열을 사용합니다.

임시 데이터베이스의 크기 증가

대형 데이터베이스는 정상적으로 실행되는 동안 많은 양의 임시 데이터를 생성할 수 있습니다. 임시 데이터베이스의 크기가 증가하여 기본 저장 장치에 저장 공간이 부족하거나 임시 데이터베이스 한계에 도달하면 응용 프로그램이 작동하지 않습니다.

다음은 임시 데이터베이스의 크기를 증가시키는 작업입니다. 특히 작업 그룹을 명시적 단일 트랜잭션에 포함시킬 경우 더욱 크기가 증가합니다.

  • 많은 데이터에 영향을 미치는 UPDATE 및 DELETE 문

  • 정렬 작업. 정렬 작업에 적합한 인덱스가 있을 경우에는 임시 데이터베이스를 사용할 필요가 없습니다. 일부 정렬 작업을 수행하면 임시 정렬 버퍼를 위한 추가 임시 파일이 생성될 수 있습니다. 이 파일은 임시 데이터베이스와 다릅니다. 모든 데이터베이스에 임시 데이터베이스는 하나지만 임시 정렬 버퍼 파일은 여러 개일 수 있습니다.

명시적 트랜잭션에 대한 자세한 내용은 트랜잭션 유형을 참조하십시오.

대형 데이터베이스 파일 크기가 장치의 저장소 한계를 넘지 않도록 하려면 데이터베이스를 내부 RAM에 저장하는 대신 저장소 카드에 저장합니다.