Subscription.SubscriptionDBName Subscription.SubscriptionDBName Subscription.SubscriptionDBName Property

정의

복제된 데이터를 받는 구독자 데이터베이스의 이름을 가져오거나 설정합니다. Gets or sets the name of the database on the Subscriber that receives the replicated data.

public:
 property System::String ^ SubscriptionDBName { System::String ^ get(); void set(System::String ^ value); };
public string SubscriptionDBName { get; set; }
Public Property SubscriptionDBName As String
속성 값

A * * 문자열 * * 구독 데이터베이스의 이름을 지정 하는 값입니다. A string value that specifies the name of subscription database.

예제

// 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(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 = "AdventureWorks2012Replica"
Dim publicationDbName As String = "AdventureWorks2012"

'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

설명

SubscriptionDBName 필수 속성 이며 서버에서 구독을 만들기 전에 설정 해야 합니다.SubscriptionDBName is a required property and must be set before the subscription is created on the server. 구독 등록 서버에 있으면는 SubscriptionDBName 속성을 변경할 수 없습니다.Once the subscription registration exists on the server, the SubscriptionDBName property cannot be changed.

SubscriptionDBName 의 구성원만 속성을 검색할 수는 sysadmin 고정된 서버 역할의 멤버에 의해 게시자에는 db_owner 고정된 데이터베이스 역할 또는 게시 데이터베이스에서의 구독을 만든 사용자입니다.The SubscriptionDBName property can only be retrieved by members of the sysadmin fixed server role at the Publisher, by members of the db_owner fixed database role on the publication database, or by the user that created the subscription.

SubscriptionDBName 속성의 구성원으로 설정할 수 있습니다는 sysadmin 고정된 서버 역할의 멤버 또는 게시자에는 db_owner 게시 데이터베이스의 고정된 데이터베이스 역할입니다.The SubscriptionDBName property can only be set by members of the sysadmin fixed server role at the Publisher or by members of the db_owner fixed database role on the publication database.

검색 된 SubscriptionDBName 속성은 실행 sp_helpsubscription 또는 sp_helpmergesubscription합니다.Retrieving the SubscriptionDBName property is equivalent to executing sp_helpsubscription or sp_helpmergesubscription.

설정의 SubscriptionDBName 속성은 실행 sp_addsubscription 또는 sp_addmergesubscription합니다.Setting the SubscriptionDBName property is equivalent to executing sp_addsubscription or sp_addmergesubscription.

적용 대상

추가 정보