Como criar um banco de dados usando o objeto Replication (programaticamente)
Neste tópico, você aprenderá como criar um banco de dados do Microsoft SQL Server Compact 3.5 programaticamente chamando o método AddSubscription do objeto SqlServerCe.Replication. Para obter mais informações sobre como usar o namespace SqlServerCe, consulte a documentação de referência de namespaces do SqlServerCe.
Procedimentos do SQL Server Compact 3.5
Para criar um banco de dados usando o objeto Replication
Inicialize um novo objeto Replication.
SqlCeReplication repl = new SqlCeReplication();
Defina as propriedades do objeto Replication. Essas propriedades podem incluir as informações necessárias para conectar o Editor do SQL Server. A propriedade SubscriberConnectionString especifica o nome do arquivo e o local do banco de dados que será criado.
repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf"; repl.InternetUrl = "https://www.adventure-works.com/" + "sqlmobile/sqlcesa35.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";
Chame o método AddSubscription passando o parâmetro AddOption.CreateDatabase.
repl.AddSubscription(AddOption.CreateDatabase);
Para criar um banco de dados que diferencia maiúsculas de minúsculas usando o objeto Replication
Inicialize um novo objeto Replication.
SqlCeReplication repl = new SqlCeReplication();
Defina as propriedades do objeto Replication. Essas propriedades podem incluir as informações necessárias para conectar o Editor do SQL Server. A propriedade SubscriberConnectionString especifica o nome do arquivo e o local do banco de dados que será criado. Além disso, a propriedade SubscriberConnectionString suporta uma nova propriedade "Case sensitive". Esta propriedade é usada para criar um banco de dados de assinatura que diferencia maiúsculas de minúsculas. Para obter mais informações sobre bancos de dados com diferenciação de maiúsculas e minúsculas, consulte Trabalhando com agrupamentos (SQL Server Compact).
repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf; LCID=1033; Case Sensitive=true"; repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa35.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";
Chame o método AddSubscription passando o parâmetro AddOption.CreateDatabase.
repl.AddSubscription(AddOption.CreateDatabase);
Exemplo
Este exemplo mostra como criar um novo banco de dados criando um objeto Replication, configurando as propriedades do banco de dados e da assinatura, e chamando o método AddSubscription.
SqlCeReplication repl = null;
try
{
// Instantiate and configure SqlCeReplication object
//
repl = new SqlCeReplication();
repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa35.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 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/sqlcesa35.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 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