Share via


SqlCeEngine.Repair Method

손상된 데이터베이스를 복구합니다.

네임스페이스: System.Data.SqlServerCe
어셈블리: System.Data.SqlServerCe(system.data.sqlserverce.dll에 있음)

구문

‘선언
Public Sub Repair ( _
    connectionString As String, _
    options As RepairOption _
)
public void Repair (
    string connectionString,
    RepairOption options
)
public:
void Repair (
    String^ connectionString, 
    RepairOption options
)
public void Repair (
    String connectionString, 
    RepairOption options
)
public function Repair (
    connectionString : String, 
    options : RepairOption
)

매개 변수

  • connectionString
    데이터베이스에 대한 로컬 연결 문자열입니다.
  • options
    데이터베이스를 복구할 때 사용할 RepairOption입니다.

주의

복구 메서드가 RepairOptionDeleteCorruptedRows 값을 사용하여 호출될 경우 손상된 모든 페이지가 데이터베이스에서 삭제됩니다. 그 결과 많은 양의 데이터가 손실될 수 있으나 이 옵션을 사용하여 복구된 데이터는 손상되지 않습니다.

복구 메서드가 RepairOptionRecoverCorruptedRows 값을 사용하여 호출될 경우 데이터베이스는 손상된 페이지에서 데이터를 읽으려고 시도합니다. 이렇게 되면 더 많은 데이터를 복구할 수는 있지만 복구되는 데이터가 손상되지 않도록 보장하지는 못합니다.

참고

SQL Server Compact 3.5 SP1부터는 이 메서드를 사용하여 데이터 정렬이 대/소문자를 구분하는 복구된 데이터베이스를 만들 수 있습니다. Repair 메서드에서 연결 문자열 속성 CaseSensitivefalse로 설정하면 대/소문자를 구분하는 데이터베이스에 대/소문자를 구분하는 인덱스가 들어 있는 경우 코드가 성공적으로 실행되어도 대/소문자 구분이 되지 않기 때문에 복구 로그에서 인덱스 오류가 발생할 수 있습니다. 별개의 두 레코드가 같은 것으로 취급될 때 이 오류가 발생합니다. 이러한 레코드의 예로 'aaa'와 'aaA'를 들 수 있습니다. 복구 로그 파일에 인덱스를 만들지 못했다는 내용의 메시지가 작성됩니다.

Dim engine As New SqlCeEngine("Data Source = AdventureWorks.sdf")

' Specify null destination connection string for in-place repair
'
engine.Repair(Nothing, RepairOption.DeleteCorruptedRows)
SqlCeEngine engine = new SqlCeEngine("Data Source = AdventureWorks.sdf");

// Specify null destination connection string for in-place repair
//
engine.Repair(null, RepairOption.DeleteCorruptedRows);

스레드 보안

이 유형의 모든 public static(Microsoft Visual Basic의 경우 공유) 멤버는 스레드로부터 안전합니다. 인스턴스 멤버는 스레드로부터의 안전성이 보장되지 않습니다.

플랫폼

개발 플랫폼

Windows Vista, Windows Mobile 5.0, Windows XP Professional with Service Pack 2 (SP2), Windows Server 2003, Windows Mobile 2003 for Pocket PC, Windows CE 5.0
버전 정보
.NET Framework 및 NET Compact Framework
3.5에서 지원됨
.NET Framework
3.0에서 지원됨
.NET Compact Framework 및 .Net Framework
2.0에서 지원됨

참고 항목

참조

SqlCeEngine Class
SqlCeEngine Members
System.Data.SqlServerCe Namespace