TransSubscription Classe

Définition

Représente un abonnement par émission de données à une publication transactionnelle ou d'instantané.

public ref class TransSubscription sealed : Microsoft::SqlServer::Replication::Subscription
public sealed class TransSubscription : Microsoft.SqlServer.Replication.Subscription
type TransSubscription = class
    inherit Subscription
Public NotInheritable Class TransSubscription
Inherits Subscription
Héritage

Exemples

           // Define the Publisher, publication, and databases.
           string publicationName = "AdvWorksProductTran";
           string publisherName = publisherInstance;
           string subscriberName = subscriberInstance;
           string subscriptionDbName = "AdventureWorks2012Replica";
           string publicationDbName = "AdventureWorks2012";

           //Create a connection to the Publisher.
           ServerConnection conn = new ServerConnection(publisherName);

           // Create the objects that we need.
           TransPublication publication;
           TransSubscription subscription;

           try
           {
               // Connect to the Publisher.
               conn.Connect();

               // Ensure that the publication exists and that 
               // it supports push subscriptions.
               publication = new TransPublication();
               publication.Name = publicationName;
               publication.DatabaseName = publicationDbName;
               publication.ConnectionContext = conn;

               if (publication.IsExistingObject)
               {
                   if ((publication.Attributes & PublicationAttributes.AllowPush) == 0)
                   {
                       publication.Attributes |= PublicationAttributes.AllowPush;
                   }

                   // Define the push subscription.
                   subscription = new TransSubscription();
                   subscription.ConnectionContext = conn;
                   subscription.SubscriberName = subscriberName;
                   subscription.PublicationName = publicationName;
                   subscription.DatabaseName = publicationDbName;
                   subscription.SubscriptionDBName = subscriptionDbName;

                   // Specify the Windows login credentials for the Distribution Agent job.
                   subscription.SynchronizationAgentProcessSecurity.Login = winLogin;
                   subscription.SynchronizationAgentProcessSecurity.Password = winPassword;

                   // By default, subscriptions to transactional publications are synchronized 
                   // continuously, but in this case we only want to synchronize on demand.
                   subscription.AgentSchedule.FrequencyType = ScheduleFrequencyType.OnDemand;

                   // Create the push subscription.
                   subscription.Create();
               }
               else
               {
                   // Do something here if the publication does not exist.
                   throw new ApplicationException(String.Format(
                       "The publication '{0}' does not exist on {1}.",
                       publicationName, publisherName));
               }
           }
           catch (Exception ex)
           {
               // Implement the appropriate error handling here.
               throw new ApplicationException(String.Format(
                   "The subscription to {0} could not be created.", publicationName), ex);
           }
           finally
           {
               conn.Disconnect();
           }
' Define the Publisher, publication, and databases.
Dim publicationName As String = "AdvWorksProductTran"
Dim publisherName As String = publisherInstance
Dim subscriberName As String = subscriberInstance
Dim subscriptionDbName As String = "AdventureWorks2012Replica"
Dim publicationDbName As String = "AdventureWorks2012"

'Create a connection to the Publisher.
Dim conn As ServerConnection = New ServerConnection(publisherName)

' Create the objects that we need.
Dim publication As TransPublication
Dim subscription As TransSubscription

Try
    ' Connect to the Publisher.
    conn.Connect()

    ' Ensure that the publication exists and that 
    ' it supports push subscriptions.
    publication = New TransPublication()
    publication.Name = publicationName
    publication.DatabaseName = publicationDbName
    publication.ConnectionContext = conn

    If publication.IsExistingObject Then
        If (publication.Attributes And PublicationAttributes.AllowPush) = 0 Then
            publication.Attributes = publication.Attributes _
            Or PublicationAttributes.AllowPush
        End If

        ' Define the push subscription.
        subscription = New TransSubscription()
        subscription.ConnectionContext = conn
        subscription.SubscriberName = subscriberName
        subscription.PublicationName = publicationName
        subscription.DatabaseName = publicationDbName
        subscription.SubscriptionDBName = subscriptionDbName

        ' Specify the Windows login credentials for the Distribution Agent job.
        subscription.SynchronizationAgentProcessSecurity.Login = winLogin
        subscription.SynchronizationAgentProcessSecurity.Password = winPassword

        ' By default, subscriptions to transactional publications are synchronized 
        ' continuously, but in this case we only want to synchronize on demand.
        subscription.AgentSchedule.FrequencyType = ScheduleFrequencyType.OnDemand

        ' Create the push subscription.
        subscription.Create()
    Else
        ' Do something here if the publication does not exist.
        Throw New ApplicationException(String.Format( _
         "The publication '{0}' does not exist on {1}.", _
         publicationName, publisherName))
    End If

Catch ex As Exception
    ' Implement the appropriate error handling here.
    Throw New ApplicationException(String.Format( _
        "The subscription to {0} could not be created.", publicationName), ex)
Finally
    conn.Disconnect()
End Try

Remarques

Lors de la configuration d’un serveur de publication avec un serveur de distribution distant, les valeurs fournies pour tous les paramètres, y compris SynchronizationAgentProcessSecurity, sont envoyées au serveur de distribution sous forme de texte brut. Vous devez chiffrer la connexion entre le serveur de publication et son serveur de distribution distant avant d'appeler la méthode Create . Pour plus d’informations, consultez sp_reinitsubscription (Transact-SQL).

Lorsque l’abonnement appartient à un serveur de publication non SQL Server, la ConnectionContext propriété est définie sur le serveur de distribution au lieu de Publisher, la DatabaseName propriété est définie sur la base de données de distribution au lieu de la base de données de publication et la PublisherName propriété est définie sur le nom du serveur de publication non SQL Server.

Cohérence de thread

Tous les membres statiques publics (Shared dans Microsoft Visual Basic) de ce type sont sécurisés pour les opérations multithread. Tous les membres de l'instance ne sont pas garantis comme étant thread-safe.

Constructeurs

TransSubscription()

Crée une instance de la classe TransSubscription.

TransSubscription(String, String, String, String, ServerConnection)

Crée une instance de la TransSubscription classe avec la base de données de publication, de base de données, d’abonné et d’abonné spécifiée, et avec la connexion spécifiée à l’instance de Microsoft SQL Server.

Propriétés

AgentJobId

Obtient l'ID du travail de l'agent utilisé pour synchroniser l'abonnement.

(Hérité de Subscription)
AgentOffload

Obtient ou définit si l'agent de synchronisation s'exécute sur un ordinateur autre que celui où le travail de l'agent a été créé. Cette propriété n’est plus prise en charge pour les distributeurs exécutant Microsoft SQL Server 2005 et versions ultérieures.

(Hérité de Subscription)
AgentOffloadServer

Obtient ou définit le nom de l'ordinateur distant où l'agent s'exécute lors de l'utilisation de l'activation de l'agent distant.

(Hérité de Subscription)
AgentSchedule

Obtient la planification pour le travail de l'Agent utilisé pour synchroniser l'abonnement.

(Hérité de Subscription)
BackupInformation

Obtient ou définit les informations nécessaires pour initialiser un abonnement à partir d'une sauvegarde.

CachePropertyChanges

Obtient ou définit s'il faut mettre en cache des modifications effectuées sur les propriétés de réplication ou les appliquer immédiatement.

(Hérité de ReplicationObject)
ConnectionContext

Obtient ou définit la connexion à une instance de Microsoft SQL Server.

(Hérité de ReplicationObject)
CreateSyncAgentByDefault

Obtient ou définit si le travail de l'agent utilisé pour synchroniser l'abonnement est créé par défaut.

(Hérité de Subscription)
DatabaseName

Obtient ou définit le nom de la base de données de publication.

(Hérité de Subscription)
DtsPackageLocation

Obtient ou définit l’emplacement du package Microsoft SQL Server 2000 Data Transformation Services (DTS).

DtsPackageName

Obtient ou définit le nom du package Microsoft SQL Server 2000 Data Transformation Services (DTS) appliqué à l’Abonné.

DtsPackagePassword

Définit le mot de passe utilisé pour exécuter le package Microsoft SQL Server 2000 Data Transformation Services (DTS).

EnabledForSynchronizationManager

Spécifie si l’abonnement peut être synchronisé à l’aide du Gestionnaire de synchronisation Microsoft Windows.

(Hérité de Subscription)
FullSubscription

Obtient une valeur qui indique si l'abonnement est complet.

IsExistingObject

Détermine si l'objet existe ou non sur le serveur.

(Hérité de ReplicationObject)
LoopBackDetection

Obtient ou définit si l'Agent de distribution retourne à l'Abonné les transactions créées sur ce dernier.

MemoryOptimized

Représente un abonnement par émission de données à une publication transactionnelle ou d'instantané.

Name

Obtient le nom affecté à un abonnement existant.

(Hérité de Subscription)
PublicationName

Obtient ou définit le nom de la publication à laquelle l'abonnement s'abonne.

(Hérité de Subscription)
PublisherName

Obtient ou définit le nom du serveur de publication lorsque l’abonnement appartient à un serveur de publication non SQL Server.

SecureDtsPackagePassword

Définit le mot de passe (en tant qu’objetSecureString) utilisé pour exécuter le package Microsoft SQL Server 2000 Data Transformation Services (DTS).

SqlServerName

Obtient le nom de l’instance Microsoft SQL Server à laquelle cet objet est connecté.

(Hérité de ReplicationObject)
Status

Obtient l'état de l'abonnement

(Hérité de Subscription)
SubscriberCatalog

Obtient ou définit le catalogue utilisé lors de l’établissement d’une connexion au fournisseur OLE DB pour un Abonné non SQL Server.

SubscriberDatasource

Nom de la source de données, tel qu’il est compris par le fournisseur OLE DB pour un Abonné non SQL Server.

SubscriberDatasourceType

Identifie le type de source de données qui est un Abonné non SQL Server.

SubscriberLocation

Emplacement de la base de données tel que compris par le fournisseur OLE DB pour l’Abonné non SQL Server.

SubscriberName

Obtient ou définit le nom de l'instance de Microsoft SQL Server qui représente l'Abonné.

(Hérité de Subscription)
SubscriberProvider

Identificateur programmatique unique (PROGID) avec lequel le fournisseur OLE DB pour l’Abonné non SQL Server est inscrit

SubscriberProviderString

La chaîne de connexion spécifique au fournisseur OLE DB est utilisée pour se connecter à la source de données pour les abonnés non SQL Server.

SubscriberSecurity

Obtient le contexte de sécurité utilisé pour se connecter à l'Abonné.

(Hérité de Subscription)
SubscriberType

Obtient ou définit le comportement de mise à jour pour les modifications de données sur l'Abonné.

SubscriptionDBName

Obtient ou définit le nom de la base de données sur l'Abonné qui reçoit les données répliquées.

(Hérité de Subscription)
SubscriptionLSN

Obtient ou définit le numéro séquentiel dans le journal de l'abonnement.

SubscriptionType

Détermine si l'inscription d'abonnement est pour un abonnement par émission ou par extraction de données.

(Hérité de Subscription)
SynchronizationAgent

Obtient une instance de la classe TransSynchronizationAgent qui peut être utilisée pour synchroniser l'abonnement.

SynchronizationAgentName

Obtient ou définit le nom du travail de l'agent créé pour synchroniser l'abonnement.

(Hérité de Subscription)
SynchronizationAgentProcessSecurity

Obtient le contexte de sécurité utilisé pour spécifier le compte Microsoft Windows sous lequel le travail de l’agent de synchronisation s’exécute pour synchroniser l’abonnement.

(Hérité de Subscription)
SyncType

Obtient ou définit la manière dont l'abonnement est initialisé.

(Hérité de Subscription)
UserData

Obtient ou définit une propriété d'objet qui permet aux utilisateurs d'attacher leurs propres données à l'objet.

(Hérité de ReplicationObject)

Méthodes

CheckValidCreation()

Vérifie la création de la réplication valide.

(Hérité de ReplicationObject)
CheckValidDefinition(Boolean)

Indique si la définition d'abonnement est valide.

(Hérité de Subscription)
CommitPropertyChanges()

Envoie toutes les instructions de modification de propriété mises en cache à l’instance de Microsoft SQL Server.

(Hérité de ReplicationObject)
Create()

Crée l'inscription d'abonnement sur le serveur de publication.

(Hérité de Subscription)
Decouple()

Dissocie l'objet de réplication référencé du serveur.

(Hérité de ReplicationObject)
DoUpdateMemoryOptimizedProperty(String)

Représente un abonnement par émission de données à une publication transactionnelle ou d'instantané.

GetChangeCommand(StringBuilder, String, String)

Retourne la commande de modification de la réplication.

(Hérité de ReplicationObject)
GetCreateCommand(StringBuilder, Boolean, ScriptOptions)

Retourne la commande de création de la réplication.

(Hérité de ReplicationObject)
GetDropCommand(StringBuilder, Boolean)

Retourne la commande de suppression de la réplication.

(Hérité de ReplicationObject)
InternalRefresh(Boolean)

Initialise une actualisation interne de la réplication.

(Hérité de ReplicationObject)
Load()

Charge les propriétés d'un objet existant à partir du serveur.

(Hérité de ReplicationObject)
LoadProperties()

Charge les propriétés d'un objet existant à partir du serveur.

(Hérité de ReplicationObject)
Refresh()

Recharge les propriétés de l'objet.

(Hérité de ReplicationObject)
Reinitialize()

Signale l'abonnement en vue de sa réinitialisation lors de la prochaine exécution de l’Agent de distribution pour synchroniser l'abonnement.

Reinitialize(Boolean)

Réinitialise l'abonnement.

Remove()

Supprime l'inscription d'abonnement sur le serveur de publication et supprime des objets de réplication sur l'Abonné pour un abonnement par émission de données.

(Hérité de Subscription)
Script(ScriptOptions)

Retourne un script Transact-SQL qui peut être utilisé pour créer ou supprimer l’abonnement.

(Hérité de Subscription)
StopSynchronizationJob()

Tente d'arrêter un travail de l'Agent de distribution en cours d'exécution qui synchronise actuellement l'abonnement.

SynchronizeWithJob()

Démarre le travail de l'Agent pour synchroniser l'abonnement.

S’applique à

Voir aussi