Vorgehensweise: Löschen eines Abonnements von SQL Server Compact Edition (programmgesteuert)
In diesem Thema erfahren Sie, wie ein Abonnement in einer Datenbank von Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) mithilfe der SqlCeReplication-Klasse gelöscht werden kann. Weitere Informationen zum Verwenden des SqlServerCe-Namespaces finden Sie in der Referenzdokumentation zum SqlServerCe-Namespace.
So löschen Sie ein Abonnement von SQL Server Compact Edition
Initialisieren Sie ein SqlCeReplication-Objekt.
Legen Sie die folgenden Eigenschaften des SqlCeReplication-Objekts fest:
- SubscriberConnectionString
- Subscriber
- Publisher
- Publication
- PublisherDatabase
Rufen Sie die DropSubscription-Methode auf, und übergeben Sie dabei DropOption. DropOption ermöglicht es Ihnen, die Datenbank zu behalten oder zu löschen. Wenn Sie DropOption mit DropDatabase angeben und die Datenbank mehr als ein Abonnement enthält, wird die Datenbank nicht gelöscht.
Beispiel
In diesem Beispiel wird gezeigt, wie ein Abonnement in der Datenbank MYDATABASE.SDF gelöscht wird. Nach dem Löschen des Abonnements wird die Datenbank gelöscht.
SqlCeReplication repl = null;
try
{
// Set the Replication object properties.
repl = new SqlCeReplication();
repl.SubscriberConnectionString =
@"Data Source='ssce.sdf'";
repl.Publisher = @"servername";
repl.PublisherDatabase = @"SQLMobile";
repl.Publication = @"SQLMobile";
// Drop the subscription and delete the database.
repl.DropSubscription(DropOption.DropDatabase);
}
catch(SqlCeException ex)
{
// Use your own error handling routine to show error information.
// ShowError.ShowErrors(ex);
}
finally
{
// Dispose of the Replication object.
repl.Dispose();
}
Dim repl As SqlCeReplication = Nothing
Try
' Set the Replication object properties.
repl = New SqlCeReplication()
repl.SubscriberConnectionString = "Data Source='ssce.sdf'"
repl.Publisher = "servername"
repl.PublisherDatabase = "SQLMobile"
repl.Publication = "SQLMobile"
' Drop the subscription and delete the database.
repl.DropSubscription(DropOption.DropDatabase)
Catch ex As SqlCeException
' Use your own error handling routine to show error information.
' ShowErrors(ex)
Finally
' Dispose of the Replication object.
repl.Dispose()
End Try
ISSCEMerge *pISSCEMerge = NULL;
BSTR bstr = NULL;
/* Create the Replication object. */
CoCreateInstance(CLSID_Replication, NULL, CLSCTX_INPROC_SERVER,
IID_ISSCEMerge, (LPVOID *) &pISSCEMerge);
/* Set Subscriber properties. */
bstr = SysAllocString(L"data source=\\Ssce.sdf");
pISSCEMerge->put_SubscriberConnectionString(bstr);
SysFreeString(bstr);
bstr = SysAllocString(L"SamplePublisher");
pISSCEMerge->put_Publisher(bstr);
SysFreeString(bstr);
bstr = SysAllocString(L"AdventureWorks_SQLCE");
pISSCEMerge->put_PublisherDatabase(bstr);
SysFreeString(bstr);
bstr = SysAllocString(L"SQLCEReplDemo");
pISSCEMerge->put_Publication(bstr);
SysFreeString(bstr);
/* Drop the subscription and delete the database. */
pISSCEMerge->DropSubscription(DROP_DATABASE));
Siehe auch
Konzepte
Verwenden der Mergereplikation
Löschen eines Abonnements