如何:使用 Replication 物件建立 SQL Server Compact Edition 資料庫 (以程式設計的方式)
在此主題中,您將瞭解如何呼叫 SqlServerCe.Replication 物件的 AddSubscription 方法,以程式設計的方式建立 Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) 資料庫。如需使用 SqlServerCe 命名空間的詳細資訊,請參閱 SqlServerCe 命名空間的參考說明文件。
使用 Replication 物件建立 SQL Server Compact Edition 資料庫
初始化新的 Replication 物件。
SqlCeReplication repl = new SqlCeReplication();
設定 Replication 物件的屬性。這些屬性可包含連接到 SQL Server 發行者所需的資訊。SubscriberConnectionString 屬性指定將建立的資料庫檔名和位置。
repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf"; repl.InternetUrl = "https://www.adventure-works.com/" + "sqlmobile/sqlcesa30.dll"; repl.InternetLogin = "MyInternetLogin"; repl.InternetPassword = "<password>"; repl.Publisher = "MyPublisher"; repl.PublisherDatabase = "MyPublisherDatabase"; repl.PublisherLogin = "MyPublisherLogin"; repl.PublisherPassword = "<password>"; repl.Publication = "MyPublication"; repl.Subscriber = "MySubscriber";
呼叫 AddSubscription 方法,傳入 AddOption.CreateDatabase 參數。
repl.AddSubscription(AddOption.CreateDatabase);
範例
此範例顯示如何建立 Replication 物件、設定資料庫與訂閱的屬性,然後呼叫 AddSubscription 方法,以建立新的資料庫。
SqlCeReplication repl = null;
try
{
// Instantiate and configure SqlCeReplication object
//
repl = new SqlCeReplication();
repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa30.dll";
repl.InternetLogin = "MyInternetLogin";
repl.InternetPassword = "<password>";
repl.Publisher = "MyPublisher";
repl.PublisherDatabase = "MyPublisherDatabase";
repl.PublisherLogin = "MyPublisherLogin";
repl.PublisherPassword = "<password>";
repl.Publication = "MyPublication";
repl.Subscriber = "MySubscriber";
repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf";
// Create a local SQL Server Compact Edition Database subscription
//
repl.AddSubscription(AddOption.CreateDatabase);
// Synchronize to the SQL Server database
//
repl.Synchronize();
}
catch (SqlCeException)
{
// Handle errors here
//
}
finally
{
// Dispose the repl object
//
repl.Dispose();
}
Dim repl As SqlCeReplication = Nothing
Try
' Instantiate and configure SqlCeReplication object
'
repl = New SqlCeReplication()
repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa30.dll"
repl.InternetLogin = "MyInternetLogin"
repl.InternetPassword = "<password>"
repl.Publisher = "MyPublisher"
repl.PublisherDatabase = "MyPublisherDatabase"
repl.PublisherLogin = "MyPublisherLogin"
repl.PublisherPassword = "<password>"
repl.Publication = "MyPublication"
repl.Subscriber = "MySubscriber"
repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf"
' Create the local SQL Server Compact Edition Database subscription
'
repl.AddSubscription(AddOption.CreateDatabase)
' Synchronize to the SQL Server to populate the subscription
'
repl.Synchronize()
Catch
' Handle errors here
'
Finally
' Dispose the repl object
'
repl.Dispose()
End Try