次の方法で共有


TransSubscription クラス

トランザクション パブリケーションまたはスナップショット パブリケーションへのプッシュ サブスクリプションを表します。

継承階層

System. . :: . .Object
  Microsoft.SqlServer.Replication. . :: . .ReplicationObject
    Microsoft.SqlServer.Replication. . :: . .Subscription
      Microsoft.SqlServer.Replication..::..TransSubscription

名前空間:  Microsoft.SqlServer.Replication
アセンブリ:  Microsoft.SqlServer.Rmo (Microsoft.SqlServer.Rmo.dll)

構文

'宣言
Public NotInheritable Class TransSubscription _
    Inherits Subscription
'使用
Dim instance As TransSubscription
public sealed class TransSubscription : Subscription
public ref class TransSubscription sealed : public Subscription
[<SealedAttribute>]
type TransSubscription =  
    class
        inherit Subscription
    end
public final class TransSubscription extends Subscription

TransSubscription 型は、以下のメンバーを公開しています。

コンストラクター

  名前 説明
パブリック メソッド TransSubscription() () () () TransSubscription クラスの新しいインスタンスを作成します。
パブリック メソッド TransSubscription(String, String, String, String, ServerConnection) 指定したパブリケーション、データベース、サブスクライバ、サブスクライバ データベース、および、Microsoft SQL Server のインスタンスへの指定した接続を使用して、TransSubscription クラスの新しいインスタンスを作成します。

先頭に戻る

プロパティ

  名前 説明
パブリック プロパティ AgentJobId サブスクリプションの同期に使用されるエージェント ジョブの ID を取得します。 (Subscription から継承されています。)
パブリック プロパティ AgentOffload エージェント ジョブの作成時と異なるコンピュータ上で同期エージェントを実行するかどうかを取得します。値の設定も可能です。このプロパティは、Microsoft SQL Server 2005 以降が実行されているディストリビュータでは、サポートされません。 (Subscription から継承されています。)
パブリック プロパティ AgentOffloadServer リモート エージェントのアクティブ化を使用するとき、エージェントが実行されるリモート コンピュータの名前を取得します。値の設定も可能です。 (Subscription から継承されています。)
パブリック プロパティ AgentSchedule サブスクリプションの同期に使用されるエージェント ジョブのスケジュールを取得します。 (Subscription から継承されています。)
パブリック プロパティ BackupInformation バックアップからサブスクリプションを初期化するために必要な情報を取得します。値の設定も可能です。
パブリック プロパティ CachePropertyChanges レプリケーション プロパティに加えられた変更をキャッシュするか、またはすぐに適用するかを取得します。値の設定も可能です。 (ReplicationObject から継承されています。)
パブリック プロパティ ConnectionContext Microsoft SQL Server のインスタンスへの接続を取得します。値の設定も可能です。 (ReplicationObject から継承されています。)
パブリック プロパティ CreateSyncAgentByDefault サブスクリプションの同期に使用されるエージェント ジョブが既定で作成されるかどうかを取得します。値の設定も可能です。 (Subscription から継承されています。)
パブリック プロパティ DatabaseName パブリケーション データベースの名前を取得します。値の設定も可能です。 (Subscription から継承されています。)
パブリック プロパティ DtsPackageLocation Microsoft SQL Server 2000 データ変換サービス (DTS) パッケージの場所を取得します。値の設定も可能です。
パブリック プロパティ DtsPackageName サブスクライバで適用された Microsoft SQL Server 2000 データ変換サービス (DTS) パッケージの名前を取得します。値の設定も可能です。
パブリック プロパティ DtsPackagePassword Microsoft SQL Server 2000 データ変換サービス (DTS) パッケージの実行に使用するパスワードを設定します。
パブリック プロパティ EnabledForSynchronizationManager Microsoft Windows 同期マネージャを使用してサブスクリプションを同期できるかどうかを指定します。 (Subscription から継承されています。)
パブリック プロパティ FullSubscription インフラストラクチャです。
パブリック プロパティ IsExistingObject サーバーにオブジェクトが存在するかどうかを取得します。 (ReplicationObject から継承されています。)
パブリック プロパティ LoopBackDetection ディストリビューション エージェントがサブスクライバで発生したトランザクションをサブスクライバに戻すかどうかを取得します。値の設定も可能です。
パブリック プロパティ Name 既存のサブスクリプションに割り当てられている名前を取得します。 (Subscription から継承されています。)
パブリック プロパティ PublicationName サブスクリプションがサブスクライブするパブリケーションの名前を取得します。値の設定も可能です。 (Subscription から継承されています。)
パブリック プロパティ PublisherName サブスクリプションが SQL Server 以外のパブリッシャに属する場合に、パブリッシャの名前を取得します。値の設定も可能です。
パブリック プロパティ SecureDtsPackagePassword Microsoft SQL Server 2000 データ変換サービス (DTS) パッケージの実行に使用するパスワードを SecureString オブジェクトとして設定します。
パブリック プロパティ SqlServerName このオブジェクトの接続先となる Microsoft SQL Server インスタンスの名前を取得します。 (ReplicationObject から継承されています。)
パブリック プロパティ Status サブスクリプションの状態を取得します。 (Subscription から継承されています。)
パブリック プロパティ SubscriberCatalog SQL Server 以外のサブスクライバの OLE DB プロバイダに接続する際に使用するカタログを取得します。値の設定も可能です。
パブリック プロパティ SubscriberDatasource SQL Server 以外のサブスクライバの OLE DB プロバイダが理解できるデータ ソースの名前です。
パブリック プロパティ SubscriberDatasourceType SQL Server 以外のサブスクライバであるデータ ソースの種類を識別します。
パブリック プロパティ SubscriberLocation SQL Server 以外のサブスクライバの OLE DB プロバイダが理解できるデータベースの場所です。
パブリック プロパティ SubscriberName サブスクライバとして動作している Microsoft SQL Server のインスタンスの名前を取得します。値の設定も可能です。 (Subscription から継承されています。)
パブリック プロパティ SubscriberProvider SQL Server 以外のサブスクライバの OLE DB プロバイダの登録に使用する一意のプログラム識別子 (PROGID) です。
パブリック プロパティ SubscriberProviderString SQL Server 以外のサブスクライバのデータ ソースに接続するのに使用される OLE DB プロバイダ固有の接続文字列です。
パブリック プロパティ SubscriberSecurity サブスクライバへの接続に使用されるセキュリティ コンテキストを取得します。 (Subscription から継承されています。)
パブリック プロパティ SubscriberType サブスクライバでのデータ変更の更新動作を取得します。値の設定も可能です。
パブリック プロパティ SubscriptionDBName レプリケートされたデータを受信するサブスクライバのデータベースの名前を取得します。値の設定も可能です。 (Subscription から継承されています。)
パブリック プロパティ SubscriptionLSN
パブリック プロパティ SubscriptionType プッシュ サブスクリプションまたはプル サブスクリプションに対して、サブスクリプションを登録するかどうかを取得します。 (Subscription から継承されています。)
パブリック プロパティ SynchronizationAgent サブスクリプションの同期に使用できる TransSynchronizationAgent クラスのインスタンスを取得します。
パブリック プロパティ SynchronizationAgentName サブスクリプションの同期のために作成されるエージェント ジョブの名前を取得します。値の設定も可能です。 (Subscription から継承されています。)
パブリック プロパティ SynchronizationAgentProcessSecurity 同期エージェント ジョブがサブスクリプションの同期を実行する Microsoft Windows アカウントを指定するために使用されるセキュリティ コンテキストを取得します。 (Subscription から継承されています。)
パブリック プロパティ SyncType サブスクリプションを初期化する方法を取得します。値の設定も可能です。 (Subscription から継承されています。)
パブリック プロパティ UserData ユーザーが独自のデータをオブジェクトにアタッチすることを許可するオブジェクト プロパティを取得します。値の設定も可能です。 (ReplicationObject から継承されています。)

先頭に戻る

メソッド

  名前 説明
プロテクト メソッド CheckValidCreation インフラストラクチャです。 (ReplicationObject から継承されています。)
プロテクト メソッド CheckValidDefinition インフラストラクチャです。 (Subscription から継承されています。)
パブリック メソッド CommitPropertyChanges キャッシュされているすべてのプロパティ変更ステートメントを、Microsoft SQL Server のインスタンスに送信します。 (ReplicationObject から継承されています。)
パブリック メソッド Create パブリッシャ側でサブスクリプション登録を作成します。 (Subscription から継承されています。)
パブリック メソッド Decouple 参照先のレプリケーション オブジェクトをサーバーから切断します。 (ReplicationObject から継承されています。)
パブリック メソッド Equals (Object から継承されています。)
プロテクト メソッド Finalize (Object から継承されています。)
プロテクト メソッド GetChangeCommand インフラストラクチャです。 (ReplicationObject から継承されています。)
プロテクト メソッド GetCreateCommand インフラストラクチャです。 (ReplicationObject から継承されています。)
プロテクト メソッド GetDropCommand インフラストラクチャです。 (ReplicationObject から継承されています。)
パブリック メソッド GetHashCode (Object から継承されています。)
パブリック メソッド GetType (Object から継承されています。)
プロテクト メソッド InternalRefresh インフラストラクチャです。 (ReplicationObject から継承されています。)
パブリック メソッド Load サーバーから既存のオブジェクトのプロパティを読み込みます。 (ReplicationObject から継承されています。)
パブリック メソッド LoadProperties サーバーから既存のオブジェクトのプロパティを読み込みます。 (ReplicationObject から継承されています。)
プロテクト メソッド MemberwiseClone (Object から継承されています。)
パブリック メソッド Refresh オブジェクトのプロパティを再度読み込みます。 (ReplicationObject から継承されています。)
パブリック メソッド Reinitialize() () () () 次回ディストリビューション エージェントがサブスクリプションの同期を実行する際に、サブスクリプションを再初期化するためにサブスクリプションをマークします。
パブリック メソッド Reinitialize(Boolean)
パブリック メソッド Remove パブリッシャでサブスクリプション登録を削除し、プッシュ サブスクリプション用のサブスクライバでレプリケーション オブジェクトを削除します。 (Subscription から継承されています。)
パブリック メソッド Script サブスクリプションの作成や削除に使用できる Transact-SQL スクリプトを返します。 (Subscription から継承されています。)
パブリック メソッド StopSynchronizationJob 現在サブスクリプションの同期を実行しているディストリビューション エージェント ジョブの停止を試みます。
パブリック メソッド SynchronizeWithJob エージェント ジョブを開始してサブスクリプションを同期します。
パブリック メソッド ToString (Object から継承されています。)

先頭に戻る

説明

パブリッシャにリモート ディストリビュータを構成するとき、パラメータに指定した値は、SynchronizationAgentProcessSecurity も含めてすべてプレーン テキストとしてディストリビュータに送信されます。Create メソッドを呼び出す前に、パブリッシャとリモート ディストリビュータ間の接続を暗号化する必要があります。詳細については、「SQL Server への接続の暗号化」を参照してください。

サブスクリプションが SQL Server 以外のパブリッシャに属している場合、ConnectionContext プロパティはパブリッシャではなくディストリビュータに設定され、DatabaseName プロパティはパブリケーション データベースではなくディストリビューション データベースに設定され、PublisherName プロパティは SQL Server 以外のパブリッシャの名前に設定されます。

この名前空間、クラス、またはメンバは、.NET Framework 2.0 でのみサポートされています。

スレッド セーフ

この型の public static (Microsoft Visual Basic では Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

使用例

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

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

            // 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 = "AdventureWorks2008R2Replica"
Dim publicationDbName As String = "AdventureWorks2008R2"

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

' 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

スレッド セーフ

この型の public static (Visual Basic では Shared) のメンバーはすべて、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。