Método SqlCeEngine.Repair
Repara um banco de dados corrompido.
Namespace: System.Data.SqlServerCe
Assembly: System.Data.SqlServerCe (em System.Data.SqlServerCe.dll)
Sintaxe
'Declaração
Public Sub Repair ( _
connectionString As String, _
options As RepairOption _
)
'Uso
Dim instance As SqlCeEngine
Dim connectionString As String
Dim options As RepairOption
instance.Repair(connectionString, options)
public void Repair(
string connectionString,
RepairOption options
)
public:
void Repair(
String^ connectionString,
RepairOption options
)
member Repair :
connectionString:string *
options:RepairOption -> unit
public function Repair(
connectionString : String,
options : RepairOption
)
Parâmetros
- connectionString
Tipo: System.String
A cadeia de conexão local com o banco de dados.
- options
Tipo: System.Data.SqlServerCe.RepairOption
A RepairOption ao ser usada ao reparar o banco de dados.
Comentários
Há quatro valores de RepairOption que podem ser usados para reparar o banco de dados corrompido:
RecoverAllPossibleRows
RecoverAllOrFail
DeleteCorruptedRows
RecoverCorruptedRows: essa opção é substituída, já que ela não assegura que os dados recuperados não estão corrompidos. Você deve usar a opção RecoverAllOrFail.
Dica
No SQL Server Compact 4.0, é possível usar esse método para criar um banco de dados reparado com um agrupamento que diferencia maiúsculas de minúsculas. Se você definir a propriedade da cadeia de conexão CaseSensitive como false no método Repair para um banco de dados que diferencia maiúsculas de minúsculas, caso o banco de dados contenha um índice que diferencie maiúsculas de minúsculas, a perda desse recurso poderá gerar um erro de índice no log de reparo, mesmo que o código seja executado com êxito. O erro ocorre quando dois registros exclusivos são tratados como iguais. Dois valores de exemplo são 'aaa' e 'aaA'. A seguinte mensagem de erro é gravada no arquivo de log de reparo: Falha ao criar índice
Exemplos
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);