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。
備註
如果是使用 RepairOption 的 DeleteCorruptedRows 值來叫用修復方法,則會捨棄資料庫中所有損毀的分頁。這可能會導致大量資料遺失,但使用這個選項所復原的資料應該不會損毀。
如果是使用 RepairOption 的 RecoverCorruptedRows 值來叫用修復方法,則資料庫會嘗試從損毀的分頁讀取資料。這樣雖然可能會讓更多資料復原回來,但是這個選項並不能保證復原回來的資料絕對沒有毀損。
注意
從 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