다음을 통해 공유


Compact 및 Shrink 메서드 사용

CompactShrink 메서드는 Microsoft SQL Server 2005 Compact Edition(SQL Server Compact Edition)에서 유사하게 사용되나 데이터베이스 크기를 줄이는 방법이 약간 다릅니다.

데이터베이스 압축 및 축소

Compact 메서드를 사용하면 데이터베이스 파일의 공간을 회수할 수 있습니다. 또한 암호 및 LCID(로캘 ID)를 비롯한 데이터베이스 설정을 변경할 수도 있습니다. 데이터베이스를 압축하면 새 데이터베이스 파일이 생성되고 테이블 페이지가 데이터베이스 페이지 주위로 재구성되며, 데이터베이스 데이터가 새 데이터 페이지에 다시 기록되어 사용하지 않은 공간을 회수할 수 있습니다.

또한 Shrink 메서드를 사용하여 데이터베이스 파일 공간을 회수할 수 있습니다. 그러나 Shrink 메서드는 새 데이터베이스 파일을 만들지 않고 레코드를 재구성하고 빈 레코드를 삭제하는 기능만 하므로 Shrink 메서드를 사용하여 데이터베이스 설정을 변경할 수 없습니다. 이 메서드는 단지 레코드를 재구성하고 빈 레코드를 삭제합니다.

압축 및 축소에 대한 자세한 내용은 데이터베이스 유지 관리(SQL Server Compact Edition)를 참조하십시오.

다음 예는 임시 데이터베이스 파일을 만들고 Compact 메서드를 사용하여 원본 데이터베이스 데이터를 임시 데이터베이스로 전송한 다음 원본 데이터베이스를 임시 데이터베이스로 교체합니다. 최종 데이터베이스는 원본과 이름은 같지만 데이터가 압축되어 있습니다.

C#

        string src     = "MyDB.sdf";
        string dest    = "MyDB.sdf.tmp";
      // Initialize SqlCeEngine object.
      SqlCeEngine engine = new SqlCeEngine("Data Source = " + src);

      try {
         engine.Compact("Data Source = " + dest);
         engine.Dispose();
        
          File.Delete(src);
          File.Move(dest, src);
      }
      catch(SqlCeException e) 
      {
         //Use your own error handling routine.
         //ShowErrors(e);
      }
      finally 
      {
         //Dispose of the SqlCeEngine object.
         engine.Dispose();
      }

Visual Basic

    Dim src  As String = "MyDB.sdf"
    Dim dest As String = "MyDB.sdf.tmp"
    ' Initialize SqlCeEngine Object.      
    Dim engine As New SqlCeEngine("Data Source = " + src)

    Try
        engine.Compact(("Data Source = " + dest))
        engine.Dispose()
      
        File.Delete(src)
        File.Move(dest, src)

    Catch e As SqlCeException
    'Use your own error handling routine.
    'ShowErrors(e)
    Finally
        'Dispose of the SqlCeEngine object.
         engine.Dispose()
    End Try

참고 항목

참조

System.Data.SqlServerCe 네임스페이스 개체
System.Data.SqlServerCe Namespace(.NET Framework 참조 설명서)

도움말 및 정보

SQL Server Compact Edition 지원 정보 보기