Share via


Cómo crear una base de datos con el objeto Replication (mediante programación)

En este tema, aprenderá a crear una base de datos de Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5) mediante programación llamando al método AddSubscription del objeto SqlServerCe.Replication. Para obtener más información sobre cómo usar el espacio de nombres SqlServerCe, consulte la documentación de referencia sobre el espacio de nombres SqlServerCe.

Procedimientos para SQL Server Compact 3.5

Para crear una base de datos con el objeto Replication

  1. Inicialice un nuevo objeto Replication.

    SqlCeReplication repl = new SqlCeReplication();
    
  2. Establezca las propiedades del objeto Replication. Estas propiedades pueden incluir la información necesaria para conectarse al publicador de SQL Server. La propiedad SubscriberConnectionString especifica el nombre de archivo y la ubicación de la base de datos que se creará.

    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";
    
  3. Llame al método AddSubscription pasando el parámetro AddOption.CreateDatabase.

    repl.AddSubscription(AddOption.CreateDatabase);
    

Para crear una base de datos con distinción de mayúsculas y minúsculas con el objeto Replication

  1. Inicialice un nuevo objeto Replication.

    SqlCeReplication repl = new SqlCeReplication();
    
  2. Establezca las propiedades del objeto Replication. Estas propiedades pueden incluir la información necesaria para conectarse al publicador de SQL Server. La propiedad SubscriberConnectionString especifica el nombre de archivo y la ubicación de la base de datos que se creará. Además, la propiedad SubscriberConnectionString admite una nueva propiedad "Case sensitive". Esta propiedad se utiliza para crear una base de datos de suscripciones con distinción de mayúsculas y minúsculas. Para obtener más información acerca de las bases de datos con distinción de mayúsculas y minúsculas, vea Trabajar con intercalaciones (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";
    
  3. Llame al método AddSubscription pasando el parámetro AddOption.CreateDatabase.

    repl.AddSubscription(AddOption.CreateDatabase);
    

Ejemplo

En este ejemplo se muestra cómo crear una nueva base de datos creando un objeto Replication, estableciendo las propiedades de la base de datos y de la suscripción y, a continuación, llamando al 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

Vea también

Otros recursos

Usar la replicación de mezcla

Ayuda e información

Obtener ayuda (SQL Server Compact 3.5 Service Pack 1)