Clase MergePublication
SQL Server 2008 R2
Represents a merge publication.
System..::..Object
Microsoft.SqlServer.Replication..::..ReplicationObject
Microsoft.SqlServer.Replication..::..Publication
Microsoft.SqlServer.Replication..::..MergePublication
Microsoft.SqlServer.Replication..::..ReplicationObject
Microsoft.SqlServer.Replication..::..Publication
Microsoft.SqlServer.Replication..::..MergePublication
Ensamblado: Microsoft.SqlServer.Rmo (en Microsoft.SqlServer.Rmo.dll)
El tipo MergePublication expone los siguientes miembros.
| Nombre | Descripción | |
|---|---|---|
![]() | MergePublication()()()() | Creates a new instance of the MergePublication class. |
![]() | MergePublication(String, String, ServerConnection) | Initializes a new instance of the MergePublication class with the specified name, database, and connection to the Publisher. |
![]() | MergePublication(String, String, ServerConnection, Boolean) | Creates an instance of the MergePublication class, specifying whether the Snapshot Agent job should be created by default. |
| Nombre | Descripción | |
|---|---|---|
![]() | AltSnapshotFolder | Gets or sets the alternate snapshot file location for a publication. (Se hereda de Publication.) |
![]() | Attributes | Gets or sets the publication attributes. (Se hereda de Publication.) |
![]() | AutomaticReinitializationPolicy | Gets or sets whether changes at the Publisher are uploaded to the Publisher when a subscription is reinitialized because of a change in the publication. |
![]() | CachePropertyChanges | Gets or sets whether to cache changes made to the replication properties or to apply them immediately. (Se hereda de ReplicationObject.) |
![]() | CompatibilityLevel | Gets or sets the earliest version of Microsoft SQL Server that can subscribe to the merge publication. (Invalida Publication..::..CompatibilityLevel.) |
![]() | ConflictRetention | Gets or sets the number of days that conflict data rows are retained in conflict tables. (Se hereda de Publication.) |
![]() | ConnectionContext | Gets or sets the connection to an instance of Microsoft SQL Server. (Se hereda de ReplicationObject.) |
![]() | CreateSnapshotAgentByDefault | Gets or sets if the Snapshot Agent job is added automatically when the publication is created. (Se hereda de Publication.) |
![]() | DatabaseName | Gets or sets the name of the publication database. (Se hereda de Publication.) |
![]() | Description | Gets or sets a textual description of the publication. (Se hereda de Publication.) |
![]() | FtpAddress | Gets or sets the address of the File Transfer Protocol (FTP) server computer for publications that allow subscription initialization over FTP. (Se hereda de Publication.) |
![]() | FtpLogin | Gets or sets the login that is used to connect to the File Transfer Protocol (FTP) server for publications that allow subscription initialization over FTP. (Se hereda de Publication.) |
![]() | FtpPassword | Sets the password for the login that is used to connect to the File Transfer Protocol (FTP) server for publications that allow subscription initialization over FTP. (Se hereda de Publication.) |
![]() | FtpPort | Gets or sets the port of the File Transfer Protocol (FTP) server computer for publications that allow subscription initialization over FTP. (Se hereda de Publication.) |
![]() | FtpSubdirectory | Gets or sets the subdirectory on the File Transfer Protocol (FTP) server computer for publications that allow subscription initialization over FTP. (Se hereda de Publication.) |
![]() | HasSubscription | Gets whether the publication has one or more subscriptions. (Se hereda de Publication.) |
![]() | IsExistingObject | Gets whether the object exists on the server or not. (Se hereda de ReplicationObject.) |
![]() | MaxConcurrentDynamicSnapshots | Gets or sets the maximum number of concurrent Snapshot Agent sessions supported when generating data snapshots when the publication has a parameterized row filter. |
![]() | MaxConcurrentMerge | Gets or sets the maximum number of Merge Agents that can synchronize with the publication concurrently. |
![]() | MergeArticles | Gets the existing articles in the merge publication. |
![]() | MergeSubscriptions | Gets the subscriptions that belong to a merge publication. |
![]() | Name | Gets or sets the name of the publication. (Se hereda de Publication.) |
![]() | PartitionGroupsOption | Gets or sets whether precomputed partitions should be used to optimize the synchronization process. |
![]() | PostSnapshotScript | Gets or sets the name and full path of a Transact-SQL script file that is executed after the initial snapshot is applied to the Subscriber. (Se hereda de Publication.) |
![]() | PreSnapshotScript | Gets or sets the name and full path of a Transact-SQL script file that is executed before the initial snapshot is applied to the Subscriber. (Se hereda de Publication.) |
![]() | Priority | Infraestructura. |
![]() | PubId | Gets the value that uniquely identifies the publication. (Se hereda de Publication.) |
![]() | ReplicateDdl | Gets or sets the data definition language (DDL) replication options that determine if DDL changes are replicated. (Se hereda de Publication.) |
![]() | RetentionPeriod | Gets or sets the amount of time before a subscription expires when the subscription is not synchronized with the publication. (Se hereda de Publication.) |
![]() | RetentionPeriodUnit | Gets or sets the unit in which the RetentionPeriodUnit property is expressed. |
![]() | SecureFtpPassword | Sets the password (as a SecureString object) for the login used to connect to the File Transfer Protocol (FTP) server for publications that allow subscription initialization over FTP. (Se hereda de Publication.) |
![]() | SnapshotAgentExists | Gets if the SQL Server Agent job exists to generate the initial snapshot for this publication. (Se hereda de Publication.) |
![]() | SnapshotAvailable | Gets or sets whether the snapshot files for this publication have been generated and are available to initialize Subscribers. |
![]() | SnapshotGenerationAgentProcessSecurity | Gets an object that sets the Windows account under which the Snapshot Agent job runs. (Se hereda de Publication.) |
![]() | SnapshotGenerationAgentPublisherSecurity | Gets the security context used by the Snapshot Agent to connect to the Publisher. (Se hereda de Publication.) |
![]() | SnapshotJobId | Gets the Snapshot Agent job ID for the current publication. (Se hereda de Publication.) |
![]() | SnapshotMethod | Gets or sets the data file format of the initial snapshot. (Se hereda de Publication.) |
![]() | SnapshotSchedule | Gets an object that sets the schedule for the Snapshot Agent for the current publication. (Se hereda de Publication.) |
![]() | SqlServerName | Gets the name of the Microsoft SQL Server instance to which this object is connected. (Se hereda de ReplicationObject.) |
![]() | Status | Gets or sets the status of the publication. (Se hereda de Publication.) |
![]() | Type | Gets or sets the type of publication. (Se hereda de Publication.) |
![]() | UserData | Gets or sets an object property that allows users to attach their own data to the object. (Se hereda de ReplicationObject.) |
![]() | UsesHostName | Gets whether the merge publication has a parameterized row filter that uses the HOST_NAME function to evaluate the partition. |
![]() | ValidateSubscriberInfo | Gets or sets the functions that are used to define a Subscriber partition of the published data when parameterized row filters are used. |
![]() | WebSynchronizationUrl | Gets or sets the URL used with Web synchronization. |
| Nombre | Descripción | |
|---|---|---|
![]() | AddMergeDynamicSnapshotJob | Adds a Snapshot Agent job that generates the filtered data partition for a Subscriber when a parameterized row filter is used. |
![]() | AddMergeDynamicSnapshotJobForLateBoundComClients | Enables late-bound COM clients to add a Snapshot Agent job that generates the filtered data partition for a Subscriber when a parameterized row filter is used. |
![]() | AddMergePartition | Defines a Subscriber partition for a merge publication with a parameterized row filter. |
![]() | BrowseSnapshotFolder | Returns the complete path of the directory location where snapshot files are generated. |
![]() | ChangeMergeDynamicSnapshotJobScheduleWithJobId | Modifies the schedule for the Snapshot Agent job that generates the filtered data partition for a Subscriber, based on the job ID. |
![]() | ChangeMergeDynamicSnapshotJobScheduleWithJobIdForLateBoundComClients | Allows late-bound COM clients to modify the schedule for the Snapshot Agent job that generates the filtered data partition for a Subscriber, based on the job ID. |
![]() | ChangeMergeDynamicSnapshotJobScheduleWithJobName | Modifies the schedule for the Snapshot Agent job that generates the filtered data partition for a Subscriber, based on the job name. |
![]() | ChangeMergeDynamicSnapshotJobScheduleWithJobNameForLateBoundComClients | Allows late-bound COM clients to modify the schedule for the Snapshot Agent job that generates the filtered data partition for a Subscriber, based on the job name. |
![]() | CheckValidCreation | Infraestructura. (Se hereda de ReplicationObject.) |
![]() | CheckValidDefinition | Infraestructura. (Se hereda de Publication.) |
![]() | CommitPropertyChanges | Sends all the cached property change statements to the instance of Microsoft SQL Server. (Se hereda de ReplicationObject.) |
![]() | CopySnapshot | Copies the snapshot files for the merge publication from the snapshot folder to a destination folder. |
![]() | Create | Creates the publication. (Se hereda de Publication.) |
![]() | CreateSnapshotAgent | Creates the SQL Server Agent job that is used to generate the initial snapshot for the publication, if this job does not already exist. (Se hereda de Publication.) |
![]() | Decouple | Decouples the referenced replication object from the server. (Se hereda de ReplicationObject.) |
![]() | DisableSynchronizationPartner | Disables the specified synchronization partner for this merge publication. |
![]() | EnableSynchronizationPartner | Enables a specified synchronization partner for this merge publication. |
![]() | EnumAllMergeJoinFilters | Returns all the merge join filters defined on the merge publication. |
![]() | EnumArticles | Returns the articles in the publication. (Se hereda de Publication.) |
![]() | EnumMergeDynamicSnapshotJobs | Returns a list of merge dynamic snapshot jobs. |
![]() | EnumMergePartitions | Returns the Subscriber partitions defined for this merge publication. |
![]() | EnumPublicationAccesses | Returns logins that have access to the Publisher. (Se hereda de Publication.) |
![]() | EnumSubscriptions | Returns the subscriptions that subscribe to the publication. (Se hereda de Publication.) |
![]() | EnumSynchronizationPartners | Returns the alternate synchronization partners for this merge publication. |
![]() | Equals | (Se hereda de Object.) |
![]() | Finalize | (Se hereda de Object.) |
![]() | GenerateFilters | Infraestructura. |
![]() | GetChangeCommand | Infraestructura. (Se hereda de ReplicationObject.) |
![]() | GetCreateCommand | Infraestructura. (Se hereda de ReplicationObject.) |
![]() | GetDropCommand | Infraestructura. (Se hereda de ReplicationObject.) |
![]() | GetHashCode | (Se hereda de Object.) |
![]() | GetMergeDynamicSnapshotJobScheduleWithJobId | Returns the schedule for the Snapshot Agent job that generates the filtered data partition for a Subscriber based on the job ID. |
![]() | GetMergeDynamicSnapshotJobScheduleWithJobName | Returns the schedule for the Snapshot Agent job that generates the filtered data partition for a Subscriber based on the job name. |
![]() | GetType | (Se hereda de Object.) |
![]() | GrantPublicationAccess | Adds the specified login to the publication access list (PAL). (Se hereda de Publication.) |
![]() | InternalRefresh | Infraestructura. (Se hereda de ReplicationObject.) |
![]() | Load | Loads the properties of an existing object from the server. (Se hereda de ReplicationObject.) |
![]() | LoadProperties | Loads the properties of an existing object from the server. (Se hereda de ReplicationObject.) |
![]() | MakePullSubscriptionWellKnown | Registers a merge pull subscription at the Publisher. |
![]() | MemberwiseClone | (Se hereda de Object.) |
![]() | ReadLastValidationDateTimes | Returns information about the most recent subscription validation for a Subscriber. |
![]() | Refresh | Reloads the properties of the object. (Se hereda de ReplicationObject.) |
![]() | ReinitializeAllSubscriptions | Marks all the subscriptions for reinitialization. |
![]() | Remove()()()() | Removes an existing publication. (Se hereda de Publication.) |
![]() | Remove(Boolean) | Removes an existing publication even if the Distributor cannot be accessed. (Se hereda de Publication.) |
![]() | RemoveMergeDynamicSnapshotJob | Removes the specified dynamic snapshot job from the merge publication. |
![]() | RemoveMergePartition | Removes an existing Subscriber partition defined on the merge publication. |
![]() | RemovePullSubscription | Removes the registration of a Subscriber with a pull subscription to the merge publication. |
![]() | ReplicateUserDefinedScript | Replicates the execution of a user-defined script to the Subscribers of a specified publication. (Se hereda de Publication.) |
![]() | ResynchronizeSubscription | Resynchronizes a merge subscription to a known validation state that you specify. |
![]() | RevokePublicationAccess | Removes the specified login from the publication access list (PAL). (Se hereda de Publication.) |
![]() | Script | Generates a Transact-SQL script that can be used to re-create the publication as specified by the script options. (Se hereda de Publication.) |
![]() | ScriptMergeDynamicSnapshotJob | Generates a Transact-SQL script that can be used to re-create the Snapshot Agent job that generates a Subscriber's partitioned data snapshot for publications with a parameterized row filter. |
![]() | ScriptMergePartition | Generates a Transact-SQL script that can be used to re-create a Subscriber partition for publications with a parameterized row filter. |
![]() | ScriptPublicationActivation | Generates a Transact-SQL script that, when run, sets the status of a merge publication to active. |
![]() | StartSnapshotGenerationAgentJob | Starts the job that generates the initial snapshot for the publication. (Se hereda de Publication.) |
![]() | StopSnapshotGenerationAgentJob | Attempts to stop a running Snapshot Agent job. (Se hereda de Publication.) |
![]() | ToString | (Se hereda de Object.) |
![]() | ValidatePublication | Marks all subscriptions for validation during the next synchronization. |
![]() | ValidateSubscription | Marks the specified subscription for validation during the next synchronization. |
This example creates a merge publication.
// Set the Publisher, publication database, and publication names. string publisherName = publisherInstance; string publicationName = "AdvWorksSalesOrdersMerge"; string publicationDbName = "AdventureWorks2008R2"; ReplicationDatabase publicationDb; MergePublication publication; // Create a connection to the Publisher. ServerConnection conn = new ServerConnection(publisherName); try { // Connect to the Publisher. conn.Connect(); // Enable the database for merge publication. publicationDb = new ReplicationDatabase(publicationDbName, conn); if (publicationDb.LoadProperties()) { if (!publicationDb.EnabledMergePublishing) { publicationDb.EnabledMergePublishing = true; } } else { // Do something here if the database does not exist. throw new ApplicationException(String.Format( "The {0} database does not exist on {1}.", publicationDb, publisherName)); } // Set the required properties for the merge publication. publication = new MergePublication(); publication.ConnectionContext = conn; publication.Name = publicationName; publication.DatabaseName = publicationDbName; // Enable precomputed partitions. publication.PartitionGroupsOption = PartitionGroupsOption.True; // Specify the Windows account under which the Snapshot Agent job runs. // This account will be used for the local connection to the // Distributor and all agent connections that use Windows Authentication. publication.SnapshotGenerationAgentProcessSecurity.Login = winLogin; publication.SnapshotGenerationAgentProcessSecurity.Password = winPassword; // Explicitly set the security mode for the Publisher connection // Windows Authentication (the default). publication.SnapshotGenerationAgentPublisherSecurity.WindowsAuthentication = true; // Enable Subscribers to request snapshot generation and filtering. publication.Attributes |= PublicationAttributes.AllowSubscriberInitiatedSnapshot; publication.Attributes |= PublicationAttributes.DynamicFilters; // Enable pull and push subscriptions. publication.Attributes |= PublicationAttributes.AllowPull; publication.Attributes |= PublicationAttributes.AllowPush; if (!publication.IsExistingObject) { // Create the merge publication. publication.Create(); // Create a Snapshot Agent job for the publication. publication.CreateSnapshotAgent(); } else { throw new ApplicationException(String.Format( "The {0} publication already exists.", publicationName)); } } catch (Exception ex) { // Implement custom application error handling here. throw new ApplicationException(String.Format( "The publication {0} could not be created.", publicationName), ex); } finally { conn.Disconnect(); }
' Set the Publisher, publication database, and publication names. Dim publisherName As String = publisherInstance Dim publicationName As String = "AdvWorksSalesOrdersMerge" Dim publicationDbName As String = "AdventureWorks2008R2" Dim publicationDb As ReplicationDatabase Dim publication As MergePublication ' Create a connection to the Publisher. Dim conn As ServerConnection = New ServerConnection(publisherName) Try ' Connect to the Publisher. conn.Connect() ' Enable the database for merge publication. publicationDb = New ReplicationDatabase(publicationDbName, conn) If publicationDb.LoadProperties() Then If Not publicationDb.EnabledMergePublishing Then publicationDb.EnabledMergePublishing = True End If Else ' Do something here if the database does not exist. Throw New ApplicationException(String.Format( _ "The {0} database does not exist on {1}.", _ publicationDb, publisherName)) End If ' Set the required properties for the merge publication. publication = New MergePublication() publication.ConnectionContext = conn publication.Name = publicationName publication.DatabaseName = publicationDbName ' Enable precomputed partitions. publication.PartitionGroupsOption = PartitionGroupsOption.True ' Specify the Windows account under which the Snapshot Agent job runs. ' This account will be used for the local connection to the ' Distributor and all agent connections that use Windows Authentication. publication.SnapshotGenerationAgentProcessSecurity.Login = winLogin publication.SnapshotGenerationAgentProcessSecurity.Password = winPassword ' Explicitly set the security mode for the Publisher connection ' Windows Authentication (the default). publication.SnapshotGenerationAgentPublisherSecurity.WindowsAuthentication = True ' Enable Subscribers to request snapshot generation and filtering. publication.Attributes = publication.Attributes Or _ PublicationAttributes.AllowSubscriberInitiatedSnapshot publication.Attributes = publication.Attributes Or _ PublicationAttributes.DynamicFilters ' Enable pull and push subscriptions publication.Attributes = publication.Attributes Or _ PublicationAttributes.AllowPull publication.Attributes = publication.Attributes Or _ PublicationAttributes.AllowPush If Not publication.IsExistingObject Then ' Create the merge publication. publication.Create() ' Create a Snapshot Agent job for the publication. publication.CreateSnapshotAgent() Else Throw New ApplicationException(String.Format( _ "The {0} publication already exists.", publicationName)) End If Catch ex As Exception ' Implement custom application error handling here. Throw New ApplicationException(String.Format( _ "The publication {0} could not be created.", publicationName), ex) Finally conn.Disconnect() End Try
This example changes the properties of a merge publication.
// Define the server, database, and publication names string publisherName = publisherInstance; string publicationName = "AdvWorksSalesOrdersMerge"; string publicationDbName = "AdventureWorks2008R2"; MergePublication publication; // Create a connection to the Publisher. ServerConnection conn = new ServerConnection(publisherName); try { // Connect to the Publisher. conn.Connect(); // Set the required properties for the publication. publication = new MergePublication(); publication.ConnectionContext = conn; publication.Name = publicationName; publication.DatabaseName = publicationDbName; // If we can't get the properties for this merge publication, then throw an application exception. if (publication.LoadProperties()) { // If DDL replication is currently enabled, disable it. if (publication.ReplicateDdl == DdlReplicationOptions.All) { publication.ReplicateDdl = DdlReplicationOptions.None; } else { publication.ReplicateDdl = DdlReplicationOptions.All; } } else { throw new ApplicationException(String.Format( "Settings could not be retrieved for the publication. " + "Ensure that the publication {0} exists on {1}.", publicationName, publisherName)); } } catch (Exception ex) { // Do error handling here. throw new ApplicationException( "The publication property could not be changed.", ex); } finally { conn.Disconnect(); }
' Define the server, database, and publication names Dim publisherName As String = publisherInstance Dim publicationName As String = "AdvWorksSalesOrdersMerge" Dim publicationDbName As String = "AdventureWorks2008R2" Dim publication As MergePublication ' Create a connection to the Publisher. Dim conn As ServerConnection = New ServerConnection(publisherName) Try ' Connect to the Publisher. conn.Connect() ' Set the required properties for the publication. publication = New MergePublication() publication.ConnectionContext = conn publication.Name = publicationName publication.DatabaseName = publicationDbName ' If we can't get the properties for this merge publication, then throw an application exception. If publication.LoadProperties() Then ' If DDL replication is currently enabled, disable it. If publication.ReplicateDdl = DdlReplicationOptions.All Then publication.ReplicateDdl = DdlReplicationOptions.None Else publication.ReplicateDdl = DdlReplicationOptions.All End If Else Throw New ApplicationException(String.Format( _ "Settings could not be retrieved for the publication. " + _ "Ensure that the publication {0} exists on {1}.", _ publicationName, publisherName)) End If Catch ex As Exception ' Do error handling here. Throw New ApplicationException( _ "The publication property could not be changed.", ex) Finally conn.Disconnect() End Try
This example deletes a merge publication.
// Define the Publisher, publication database, // and publication names. string publisherName = publisherInstance; string publicationName = "AdvWorksSalesOrdersMerge"; string publicationDbName = "AdventureWorks2008R2"; MergePublication publication; ReplicationDatabase publicationDb; // Create a connection to the Publisher. ServerConnection conn = new ServerConnection(publisherName); try { // Connect to the Publisher. conn.Connect(); // Set the required properties for the merge publication. publication = new MergePublication(); publication.ConnectionContext = conn; publication.Name = publicationName; publication.DatabaseName = publicationDbName; // Delete the publication, if it exists and has no subscriptions. if (publication.LoadProperties() && !publication.HasSubscription) { publication.Remove(); } else { // Do something here if the publication does not exist // or has subscriptions. throw new ApplicationException(String.Format( "The publication {0} could not be deleted. " + "Ensure that the publication exists and that all " + "subscriptions have been deleted.", publicationName, publisherName)); } // If no other merge publications exists, // disable publishing on the database. publicationDb = new ReplicationDatabase(publicationDbName, conn); if (publicationDb.LoadProperties()) { if (publicationDb.MergePublications.Count == 0 && publicationDb.EnabledMergePublishing) { publicationDb.EnabledMergePublishing = false; } } else { // Do something here if the database does not exist. throw new ApplicationException(String.Format( "The database {0} does not exist on {1}.", publicationDbName, publisherName)); } } catch (Exception ex) { // Implement application error handling here. throw new ApplicationException(String.Format( "The publication {0} could not be deleted.", publicationName), ex); } finally { conn.Disconnect(); }
' Define the Publisher, publication database, ' and publication names. Dim publisherName As String = publisherInstance Dim publicationName As String = "AdvWorksSalesOrdersMerge" Dim publicationDbName As String = "AdventureWorks2008R2" Dim publication As MergePublication Dim publicationDb As ReplicationDatabase ' Create a connection to the Publisher. Dim conn As ServerConnection = New ServerConnection(publisherName) Try ' Connect to the Publisher. conn.Connect() ' Set the required properties for the merge publication. publication = New MergePublication() publication.ConnectionContext = conn publication.Name = publicationName publication.DatabaseName = publicationDbName ' Delete the publication, if it exists and has no subscriptions. If (publication.LoadProperties() And Not publication.HasSubscription) Then publication.Remove() Else ' Do something here if the publication does not exist ' or has subscriptions. Throw New ApplicationException(String.Format( _ "The publication {0} could not be deleted. " + _ "Ensure that the publication exists and that all " + _ "subscriptions have been deleted.", _ publicationName, publisherName)) End If ' If no other merge publications exists, ' disable publishing on the database. publicationDb = New ReplicationDatabase(publicationDbName, conn) If publicationDb.LoadProperties() Then If publicationDb.MergePublications.Count = 0 _ And publicationDb.EnabledMergePublishing Then publicationDb.EnabledMergePublishing = False End If Else ' Do something here if the database does not exist. Throw New ApplicationException(String.Format( _ "The database {0} does not exist on {1}.", _ publicationDbName, publisherName)) End If Catch ex As Exception ' Implement application error handling here. Throw New ApplicationException(String.Format( _ "The publication {0} could not be deleted.", _ publicationName), ex) Finally conn.Disconnect() End Try

