Freigeben über


SqlCeEngine.Compact-Methode

Nicht verwendeter Speicherplatz wird in der SQL Server Compact-Datenbank freigegeben, indem aus der vorhandenen Datei eine neue Datenbankdatei erstellt wird. Diese Methode wird auch verwendet, um die Sortierreihenfolge, die Verschlüsselung oder die Kennworteinstellungen der Datenbank zu ändern.

Namespace:  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Syntax

'Declaration
Public Sub Compact ( _
    connectionString As String _
)
'Usage
Dim instance As SqlCeEngine
Dim connectionString As String

instance.Compact(connectionString)
public void Compact(
    string connectionString
)
public:
void Compact(
    String^ connectionString
)
member Compact : 
        connectionString:string -> unit 
public function Compact(
    connectionString : String
)

Parameter

  • connectionString
    Typ: System.String
    Die Verbindungszeichenfolge zur Zieldatenbank.

Hinweise

Die Verbindungszeichenfolge gibt eine Verbindung zur Zieldatenbank an, die von dieser Methode erstellt wird.

Wenn eine Datei mit demselben Namen oder die angegebene Datenbank bereits vorhanden ist, wird eine Ausnahme ausgelöst. .

Wenn eine leere Zeichenfolge als Verbindungszeichenfolge übergeben wird, überschreibt die neue Datenbankdatei die alte Datenbankdatei und verwendet denselben Namen.

Wichtig

Eine fehlerbedingte Beendigung einer Anwendung, bevor der Compact-Vorgang abgeschlossen ist, führt dazu, dass eine temporäre Datenbankdatei im System verbleibt. Diese Datei hat den Namen "<Dateiname>pack.sdf" und muss manuell entfernt werden.

Beispiele

Das folgende Beispiel veranschaulicht, wie eine SQL Server Compact-Datenbank komprimiert wird.

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

' Specify null destination connection string for in-place compaction
'
engine.Compact(Nothing)

' Specify connection string for new database options; The following 
' tokens are valid:
'      - Password
'      - LCID
'      - Encrypt
' 
' All other SqlCeConnection.ConnectionString tokens are ignored
'
engine.Compact("Data Source=; Password =a@3!7f$dQ;")
SqlCeEngine engine = new SqlCeEngine("Data Source = AdventureWorks.sdf");

// Specify null destination connection string for in-place compaction
//
engine.Compact(null);

// Specify connection string for new database options; The following 
// tokens are valid:
//      - Password
//      - LCID
//      - Encrypt
// 
// All other SqlCeConnection.ConnectionString tokens are ignored
//
engine.Compact("Data Source=; Password =a@3!7f$dQ;");

Siehe auch

Verweis

SqlCeEngine Klasse

System.Data.SqlServerCe-Namespace