sp_changemergepublication (Transact-SQL)sp_changemergepublication (Transact-SQL)

S’APPLIQUE À : ouiSQL Server nonAzure SQL Database nonAzure SQL Data Warehouse nonParallel Data Warehouse APPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Modifie les propriétés d'une publication de fusion.Changes the properties of a merge publication. Cette procédure stockée est exécutée sur le serveur de publication dans la base de données de publication.This stored procedure is executed at the Publisher on the publication database.

Icône de lien de rubrique Conventions de la syntaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SyntaxeSyntax

  
sp_changemergepublication [ @publication= ] 'publication'  
    [ , [ @property= ] 'property' ]  
    [ , [ @value= ] 'value' ]  
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]  
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]  

ArgumentsArguments

[ @publication = ] 'publication' Le nom de la publication.[ @publication = ] 'publication' The name of the publication. publication est sysname, sans valeur par défaut.publication is sysname, with no default.

[ @property = ] 'property' La propriété à modifier pour la publication concernée.[ @property = ] 'property' The property to change for the given publication. propriété est sysname, et peut être une des valeurs répertoriée dans le tableau suivant.property is sysname, and can be one of the values listed in the table that follows.

[ @value = ] 'value' La nouvelle valeur pour la propriété spécifiée.[ @value = ] 'value' The new value for the specified property. valeur est nvarchar (255) , et peut être une des valeurs répertoriée dans le tableau suivant.value is nvarchar(255), and can be one of the values listed in the table that follows.

Le tableau ci-dessous décrit les propriétés modifiables de la publication ainsi que les limites liées aux valeurs de ces propriétés.This table describes the properties of the publication that can be changed, and describes restrictions on the values for those properties.

PropriétéProperty ValueValue DescriptionDescription
allow_anonymousallow_anonymous truetrue Les abonnements anonymes sont autorisés.Anonymous subscriptions are allowed.
falsefalse Les abonnements anonymes ne sont pas autorisés.Anonymous subscriptions are not allowed.
allow_partition_realignmentallow_partition_realignment truetrue Les opérations de suppression sont envoyées à l'Abonné pour refléter les résultats d'une modification de partition en supprimant des données qui ne font plus partie de la partition de l'Abonné.Deletes are sent to the Subscriber to reflect the results of a partition change by removing data that is no longer part of the Subscriber's partition. Il s’agit du comportement par défaut.This is the default behavior.
falsefalse Les données d'une ancienne partition demeurent sur l'Abonné : les modifications apportées à ces données sur le serveur de publication ne sont pas répliquées sur l'Abonné.Data from an old partition is left on the Subscriber, where changes made to this data on the Publisher do not replicate to this Subscriber. À la place, les modifications apportées à l'Abonné sont répliquées vers le serveur de publication.Instead, changes that are made on the Subscriber replicate to the Publisher. Cela permet de conserver dans un abonnement des données issues d'une ancienne partition afin qu'elles soient accessibles à des fins d'historique.This is used to retain data in a subscription from an old partition when the data has to be accessible for historical purposes.
allow_pullallow_pull truetrue Les abonnements par extraction de données (pull) sont autorisés pour la publication concernée.Pull subscriptions are allowed for the given publication.
falsefalse Les abonnements par extraction de données (pull) sont pas autorisés pour la publication concernée.Pull subscriptions are not allowed for the given publication.
allow_pushallow_push truetrue Les abonnements par envoi de données (push) sont autorisés pour la publication concernée.Push subscriptions are allowed for the given publication.
falsefalse Les abonnements par envoi de données (push) ne sont pas autorisés pour la publication concernée.Push subscriptions are not allowed for the given publication.
allow_subscriber_initiated_snapshotallow_subscriber_initiated_snapshot truetrue L'Abonné peut initier le processus d'instantané.Subscriber can initiate the snapshot process.
falsefalse L'Abonné ne peut pas initier le processus d'instantané.Subscriber cannot initiate the snapshot process.
allow_subscription_copyallow_subscription_copy truetrue Vous pouvez copier les bases de données d'abonnement qui sont abonnées à la publication.You can copy the subscription databases that subscribe to this publication.
falsefalse Vous ne pouvez pas copier les bases de données d'abonnement qui sont abonnées à la publication.You cannot copy the subscription databases that subscribe to this publication.
allow_synctoalternateallow_synctoalternate truetrue Permet à un serveur partenaire de synchronisation différent de se synchroniser avec le serveur de publication.Allows an alternative synchronization partner to synchronize with this Publisher.
falsefalse Ne permet pas à un serveur partenaire de synchronisation différent de se synchroniser avec le serveur de publication.Does not allow an alternative synchronization partner to synchronize with this Publisher.
allow_web_synchronizationallow_web_synchronization truetrue Les abonnements peuvent être synchronisés via HTTPS.Subscriptions can be synchronized over HTTPS.
falsefalse Les abonnements ne peuvent pas être synchronisés via HTTPS.Subscriptions cannot be synchronized over HTTPS.
alt_snapshot_folderalt_snapshot_folder Spécifie l'emplacement de l'autre dossier de l'instantané.Specifies the location of the alternative folder for the snapshot.
automatic_reinitialization_policyautomatic_reinitialization_policy 11 Les modifications sont téléchargées depuis l'Abonné avant que l'abonnement ne soit réinitialisé.Changes are uploaded from the Subscriber before the subscription is reinitialized.
00 L'abonnement est réinitialisé sans téléchargement préalable des modifications.The subscription is reinitialized without first uploading changes.
centralized_conflictscentralized_conflicts truetrue Tous les enregistrements en conflit sont stockés sur le serveur de publication.All conflict records are stored at the Publisher. Vous devez réinitialiser les abonnés existants si vous modifiez cette propriété.If you change this property, existing Subscribers must be reinitialized.
falsefalse Les enregistrements en conflit sont stockés sur le serveur qui est sorti perdant de la résolution du conflit.Conflict records are stored at the server that lost in the conflict resolution. Vous devez réinitialiser les abonnés existants si vous modifiez cette propriété.If you change this property, existing Subscribers must be reinitialized.
compress_snapshotcompress_snapshot truetrue L'instantané se trouvant dans un dossier d'instantané de remplacement est compressé au format CAB.Snapshot in an alternative snapshot folder is compressed into the CAB format. L'instantané se trouvant dans le dossier d'instantané par défaut ne peut pas être compressé.The snapshot in the default snapshot folder cannot be compressed. La modification de cette propriété requiert un nouvel instantané.Changing this property requires a new snapshot.
falsefalse L'instantané n'est pas compressé par défaut.By default, the snapshot is not compressed. La modification de cette propriété requiert un nouvel instantané.Changing this property requires a new snapshot.
conflict_loggingconflict_logging publisher (serveur de publication)publisher Les enregistrements en conflit sont stockés sur le serveur de publication.Conflict records are stored at the Publisher.
subscriber (Abonné)subscriber Les enregistrements en conflit sont stockés dans l'Abonné à l'origine du conflit.Conflict records are stored at the Subscriber that caused the conflict. Non pris en charge pour SQL Server CompactSQL Server Compact abonnés .Not supported for SQL Server CompactSQL Server Compact Subscribers .
both (les deux)both Les enregistrements en conflit sont stockés dans le serveur de publication et l'Abonné.Conflict records are stored at both the Publisher and Subscriber.
conflict_retentionconflict_retention Un int qui spécifie la période de rétention en jours, pendant laquelle les conflits sont conservés.An int that specifies the retention period, in days, for which conflicts are retained. Paramètre conflict_retention à 0 signifie aucun nettoyage de conflit n’est nécessaire.Setting conflict_retention to 0 means no conflict cleanup is needed.
descriptiondescription Description de la publication.Description of the publication.
dynamic_filtersdynamic_filters truetrue La publication est filtrée sur une clause dynamique.Publication is filtered based on a dynamic clause.
falsefalse La publication n'est pas filtrée dynamiquement.Publication is not filtered dynamically.
enabled_for_internetenabled_for_internet truetrue La publication est activée pour Internet.Publication is enabled for the Internet. Le protocole FTP (File Transfer Protocol) peut être utilisé pour le transfert des fichiers d'instantané vers un Abonné.File Transfer Protocol (FTP) can be used to transfer the snapshot files to a Subscriber. Les fichiers de synchronisation de la publication sont placés dans le répertoire C:\Program Files\Microsoft SQL Server\MSSQL\Repldata\ftp.The synchronization files for the publication are put into the C:\Program Files\Microsoft SQL Server\MSSQL\Repldata\ftp directory.
falsefalse La publication n'est pas activée pour Internet.Publication is not enabled for the Internet.
ftp_addressftp_address L’adresse réseau du service FTP du serveur de distribution.The network address of the FTP service for the Distributor. Indique l'emplacement de stockage des fichiers d'instantané de la publication.Specifies where publication snapshot files are stored.
ftp_loginftp_login Le nom d’utilisateur qui est utilisé pour se connecter au service FTP.The user name that is used to connect to the FTP service.
ftp_passwordftp_password Mot de passe utilisateur utilisé pour la connexion au service FTP.The user password that is used to connect to the FTP service.
ftp_portftp_port Le numéro de port du service FTP du serveur de distribution.The port number of the FTP service for the Distributor. Indique le numéro de port TCP du site FTP où sont stockés les fichiers d'instantané de la publication.Specifies the TCP port number of the FTP site where the publication snapshot files are stored.
ftp_subdirectoryftp_subdirectory Indique l'emplacement où sont créés les fichiers d'instantanés si la publication prend en charge la propagation d'instantanés par FTP.Specifies where the snapshot files are created if the publication supports propagating snapshots by using FTP.
generation_leveling_thresholdgeneration_leveling_threshold Intint Spécifie le nombre de modifications qui sont contenus dans une génération.Specifies the number of changes that are contained in a generation. Une génération est une collection de modifications remises à un serveur de publication ou à un Abonné.A generation is a collection of changes that are delivered to a Publisher or Subscriber.
keep_partition_changeskeep_partition_changes truetrue La synchronisation est optimisée et seuls les abonnés qui détiennent des lignes dans les partitions modifiées sont concernés.Synchronization is optimized, and only Subscribers that have rows in the changed partitions are affected. La modification de cette propriété requiert un nouvel instantané.Changing this property requires a new snapshot.
falsefalse La synchronisation n'est pas optimisée et les partitions envoyées à tous les abonnés seront vérifiées lors de la modification de leurs données.Synchronization is not optimized, and the partitions that are sent to Subscribers are verified when data changes in a partition. La modification de cette propriété requiert un nouvel instantané.Changing this property requires a new snapshot.
max_concurrent_mergemax_concurrent_merge Il s’agit d’un int qui représente le nombre maximal de processus de fusion simultanés qui peut être exécutée sur une publication.This is an int that represents the maximum number of concurrent merge processes that can be run against a publication. Si ce nombre est 0, il n'y a pas de limite. Si ce nombre est supérieur au nombre planifié de processus de fusion à exécuter simultanément, les travaux en trop sont placés dans une file d'attente jusqu'à ce qu'un processus de fusion en cours d'exécution s'achève.If 0, there is no limit.If more than this number of merge processes are scheduled to run at the same time, the excess jobs are put into a queue until a currentlmerge process finishes.
max_concurrent_dynamic_snapshotsmax_concurrent_dynamic_snapshots Il s’agit d’un int que représente le nombre maximal de sessions d’instantané pour générer les données filtrées de capture instantanée qui peut être exécutée simultanément sur une publication de fusion qui utilise des filtres de lignes paramétrables.This is an int that represents the maximum number of snapshot sessions to generate a filtered data snapshot that can concurrently run against a merge publication that uses parameterized row filters. Si 0, il n’existe aucune limite.If 0, there is no limit. Si ce nombre est supérieur au nombre planifié de processus d'instantané à exécuter simultanément, les travaux en trop sont placés dans une file d'attente jusqu'à ce qu'un processus de fusion en cours d'exécution s'achève.If more than this number of snapshot processes are scheduled to run at the same time, the excess jobs are put into a queue until a current merge process finishes.
post_snapshot_scriptpost_snapshot_script Spécifie un pointeur vers un .sql emplacement du fichier.Specifies a pointer to an .sql file location. L'Agent de distribution ou de fusion exécute le script de post-instantané après que tous les autres scripts d'objets et données répliqués ont été appliqués lors d'une synchronisation initiale.The Distribution Agent or Merge Agent runs the post-snapshot script after all the other replicated object scripts and data have been applied during an initial synchronization. La modification de cette propriété requiert un nouvel instantané.Changing this property requires a new snapshot.
pre_snapshot_scriptpre_snapshot_script Spécifie un pointeur vers un .sql emplacement du fichier.Specifies a pointer to an .sql file location. L'Agent de fusion exécute le script de pré-instantané avant tous les scripts d'objets répliqués, lors de l'application d'un instantané chez un abonné.The Merge Agent runs the pre-snapshot script before any of the replicated object scripts when applying a snapshot at a Subscriber. La modification de cette propriété requiert un nouvel instantané.Changing this property requires a new snapshot.
publication_compatibility_levelpublication_compatibility_level 100RTM100RTM SQL Server 2008SQL Server 2008
90RTM90RTM SQL Server 2005 (9.x)SQL Server 2005 (9.x)
publish_to_activedirectorypublish_to_activedirectory truetrue Ce paramètre est déconseillé et il n'est pris en charge que pour la compatibilité descendante des scripts.This parameter has been deprecated and is only supported for the backward compatibility of scripts. Vous ne pouvez plus ajouter d'informations de publication dans Active Directory.You can no longer add publication information to Active Directory.
falsefalse Supprime les informations de publication d'Active Directory.Removes the publication information from Active Directory.
replicate_ddlreplicate_ddl 11 Instructions DDL (Definition Language) de données qui sont exécutées sur le serveur de publication sont répliquées.Data Definition Language (DDL) statements that are executed at the Publisher are replicated.
00 Les instructions DDL ne sont pas répliquées.DDL statements are not replicated.
retentionretention Il s’agit d’un int qui représente le nombre de retention_period_unit unités pour lequel enregistrer les modifications pour la publication concernée.This is an int that represents the number of retention_period_unit units for which to save changes for the given publication. L'abonnement expire et doit être réinitialisé s'il n'est pas synchronisé pendant la période de rétention et que les modifications en attente qu'il aurait dû recevoir ont été supprimées par une opération de nettoyage sur le serveur de distribution.If the subscription is not synchronized within the retention period, and the pending changes it would have received have been removed by a clean-up operation at the Distributor, the subscription expires and must be reinitialized. La période de rétention maximale autorisée correspond au nombre de jours entre la date actuelle et le 31 décembre 9999.The maximum allowable retention period is the number of days between December 31, 9999, and the current date.

Remarque : La période de rétention des publications de fusion dispose d'un délai de grâce de 24 heures pour prendre en charge les Abonnés situés dans différents fuseaux horaires.Note: The retention period for merge publications has a 24 hour grace period to accommodate Subscribers in different time zones.
retention_period_unitretention_period_unit dayday La période de rétention est spécifiée en jours.Retention period is specified in days.
weekweek La période de rétention est spécifiée en semaines.Retention period is specified in weeks.
monthmonth La période de rétention est spécifiée en mois.Retention period is specified in months.
yearyear La période de rétention est spécifiée en années.Retention period is specified in years.
snapshot_in_defaultfoldersnapshot_in_defaultfolder truetrue Les fichiers d'instantané sont stockés dans le dossier d'instantané par défaut.Snapshot files are stored in the default snapshot folder.
falsefalse Fichiers d’instantané sont stockés dans l’autre emplacement spécifié par alt_snapshot_folder.Snapshot files are stored in the alternative location that is specified by alt_snapshot_folder. Cette combinaison indique que les fichiers d'instantané sont stockés dans les emplacements par défaut et de remplacement.This combination specifies that the snapshot files are stored in both the default and alternative locations.
snapshot_readysnapshot_ready truetrue L'instantané de la publication est disponible.Snapshot for the publication is available.
falsefalse L'instantané de la publication n'est pas disponible.Snapshot for the publication is not available.
statusstatus activeactive La publication est dans un état actif.Publication is in an active state.
inactiveinactive La publication est dans un état inactif.Publication is in an inactive state.
sync_modesync_mode natif ounative or

bcp natifbcp native
La sortie programme de la copie en bloc en mode natif de toutes les tables est utilisée pour l'instantané initial.Native-mode bulk-copy program output of all tables is used for the initial snapshot.
charactercharacter

ou bcp caractèreor bcp character
La sortie programme de la copie en bloc en mode caractère de toutes les tables est utilisée pour l'instantané initial, ce qui est requis pour tous les Abonnés non SQL ServerSQL Server.Character-mode bulk-copy program output of all tables is used for the initial snapshot, which is required for all non-SQL ServerSQL Server Subscribers.
use_partition_groupsuse_partition_groups

Remarque : Après avoir utilisé partition_groups, si vous revenez à l’utilisation « setupbelongs » et définissez use_partition_groups = false dans changemergearticle, cela est peut-être pas correctement reflétées après qu’un instantané est créé.Note: After using partition_groups, if you to revert to using setupbelongs, and set use_partition_groups=false in changemergearticle, this might not be correctly reflected after a snapshot is taken. Les déclencheurs générés par l'instantané sont conformes avec les groupes de partition.The triggers that are generated by snapshot are compliant with partition groups.

La solution de contournement pour ce scénario consiste à définir l’état inactif, modifiez le use_partition_groups, puis définissez le statut actif.The workaround to this scenario is to set the status to Inactive, modify the use_partition_groups, and then set status to Active.
truetrue La publication utilise des partitions précalculées.Publication uses precomputed partitions.
falsefalse La publication n'utilise pas de partitions précalculées.Publication does not use precomputed partitions.
validate_subscriber_infovalidate_subscriber_info Répertorie les fonctions utilisées pour extraire des informations d'Abonné.Lists the functions that are being used to retrieve Subscriber information. Puis, valide les critères de filtrage dynamiques utilisés pour l'Abonné pour vérifier que les informations sont partitionnées régulièrement.Then, validates the dynamic filtering criteria that is being used for the Subscriber to verify that the information is partitioned consistently.
web_synchronization_urlweb_synchronization_url Valeur par défaut de l'URL Internet utilisée pour la synchronisation Web.Default value of the Internet URL used for Web synchronization.
NULL (par défaut)NULL (default) Retourne la liste des valeurs prises en charge pour propriété.Returns the list of supported values for property.

[ @force_invalidate_snapshot = ] force_invalidate_snapshot Confirme que l’action entreprise par cette procédure stockée peut invalider un instantané existant.[ @force_invalidate_snapshot = ] force_invalidate_snapshot Acknowledges that the action taken by this stored procedure might invalidate an existing snapshot. àce_invalidate_snapshot est un bits, avec une valeur par défaut 0.force_invalidate_snapshot is a bit, with a default of 0.

0 Spécifie que la modification de la publication n’invalide pas l’instantané.0 specifies that changing the publication does not invalidate the snapshot. Si la procédure stockée détecte que la modification requiert un nouvel instantané, une erreur se produit et aucune modification n'est effectuée.If the stored procedure detects that the change does require a new snapshot, an error occurs and no changes are made.

1 Spécifie que la modification de la publication peut invvalidate l’instantané.1 specifies that changing the publication might invvalidate the snapshot. S’il existe des abonnements existants qui nécessitent un nouvel instantané, donne l’autorisation pour l’instantané existant soit marqué comme obsolète et un nouvel instantané doit être généré.If there are existing subscriptions that would require a new snapshot, gives permission for the existing snapshot to be marked as obsolete and for a new snapshot to be generated.

Consultez la section Notes pour les propriétés qui, si modifiées, nécessitent un nouvel instantané doit être généré.See the Remarks section for the properties that, when changed, require a new snapshot to be generated.

[ @force_reinit_subscription = ] force_reinit_subscription Confirme que l’action entreprise par cette procédure stockée peut nécessiter la réinitialisation des abonnements existants.[ @force_reinit_subscription = ] force_reinit_subscription Acknowledges that the action taken by this stored procedure might require existing subscriptions to be reinitialized. àce_reinit_subscription est un bits avec une valeur par défaut 0.force_reinit_subscription is a bit with a default of 0.

0 Spécifie que la publication de modification ne nécessite pas que les abonnements soient réinitialisés.0 specifies that changing the publication does not require that subscriptions be reinitialized. Si la procédure stockée détecte que la modification nécessite la réinitialisation des abonnements existants, une erreur se produit et aucune modification n'est effectuée.If the stored procedure detects that the change would require existing subscriptions to be reinitialized, an error occurs and no changes are made.

1 Spécifie que si vous modifiez la publication entraînent la réinitialisation des abonnements existants et autorise la réinitialisation des abonnements se produise.1 specifies that changing the publication causes existing subscriptions to be reinitialized, and gives permission for the subscription reinitialization to occur.

Voir la section Remarques pour connaître les propriétés dont la modification requiert la réinitialisation de tous les abonnements existants.See the Remarks section for the properties that, when changed, require that all existing subscriptions be reinitialized.

Valeurs des codes de retourReturn Code Values

0 (réussite) ou 1 (échec)0 (success) or 1 (failure)

NotesRemarks

sp_changemergepublication est utilisé dans la réplication de fusion.sp_changemergepublication is used in merge replication.

La modification des propriétés suivantes requiert qu'un nouvel instantané soit généré.Changing the following properties requires that a new snapshot be generated. Vous devez spécifier une valeur de 1 pour le àce_invalidate_snapshot paramètre.You must specify a value of 1 for the force_invalidate_snapshot parameter.

  • alt_snapshot_folderalt_snapshot_folder

  • compress_snapshotcompress_snapshot

  • dynamic_filtersdynamic_filters

  • ftp_addressftp_address

  • ftp_loginftp_login

  • ftp_passwordftp_password

  • ftp_portftp_port

  • ftp_subdirectoryftp_subdirectory

  • post_snapshot_scriptpost_snapshot_script

  • publication_compatibility_level (pour 80SP3 uniquement)publication_compatibility_level (to 80SP3 only)

  • pre_snapshot_scriptpre_snapshot_script

  • snapshot_in_defaultfoldersnapshot_in_defaultfolder

  • sync_modesync_mode

  • use_partition_groupsuse_partition_groups

Vous devez réinitialiser les abonnements existants pour modifier les propriétés suivantes.Changing the following properties requires that existing subscriptions be reinitialized. Vous devez spécifier une valeur de 1 pour le àce_reinit_subscription paramètre.You must specify a value of 1 for the force_reinit_subscription parameter.

  • dynamic_filtersdynamic_filters

  • validate_subscriber_infovalidate_subscriber_info

Objets de publication à Active Directory à l’aide de la publish_to_active_directory, le SQL ServerSQL Server objet doit déjà être créé dans Active Directory.To list publication objects to Active Directory by using the publish_to_active_directory, the SQL ServerSQL Server object must already be created in Active Directory.

ExempleExample

DECLARE @publication AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge'; 

-- Disable DDL replication for the publication.
USE [AdventureWorks2012]
EXEC sp_changemergepublication 
  @publication = @publication, 
  @property = N'replicate_ddl', 
  @value = 0,
  @force_invalidate_snapshot = 0, 
  @force_reinit_subscription = 0;
GO

AutorisationsPermissions

Seuls les membres de la sysadmin rôle serveur fixe ou db_owner rôle de base de données fixe peuvent exécuter sp_changemergepublication.Only members of the sysadmin fixed server role or db_owner fixed database role can execute sp_changemergepublication.

Voir aussiSee Also

Afficher et modifier les propriétés d’une publication View and Modify Publication Properties
Changer les propriétés des publications et des articles Change Publication and Article Properties
sp_addmergepublication (Transact-SQL) sp_addmergepublication (Transact-SQL)
sp_dropmergepublication (Transact-SQL) sp_dropmergepublication (Transact-SQL)
sp_helpmergepublication (Transact-SQL) sp_helpmergepublication (Transact-SQL)
Procédures stockées de réplication (Transact-SQL)Replication Stored Procedures (Transact-SQL)