共用方式為


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 方法中為了區分大小寫的資料庫,將連接字串屬性 CaseSensitive 設定為 false;且如果資料庫包含區分大小寫的索引,即便成功執行程式碼,未正確區分大小寫就會在修復記錄中造成索引錯誤。將兩個唯一的記錄當成相等的記錄就會發生錯誤。兩個範例值為 '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);

執行緒安全性

任何公用靜態 (共用 在 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