次の方法で共有


Article.Name プロパティ

アーティクルの名前を取得します。値の設定も可能です。

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

構文

'宣言
Public Property Name As String 
    Get 
    Set
'使用
Dim instance As Article 
Dim value As String 

value = instance.Name

instance.Name = value
public string Name { get; set; }
public:
property String^ Name {
    String^ get ();
    void set (String^ value);
}
member Name : string with get, set
function get Name () : String 
function set Name (value : String)

プロパティ値

型: System.String
アーティクルの名前です。

例外

例外 条件
ApplicationException

既存のアーティクルにこのプロパティを設定すると発生します。

ArgumentException

このプロパティに nullNULL 参照 (Visual Basic では Nothing) 値、nullNULL 参照 (Visual Basic では Nothing) 文字を含む値、または 128 Unicode 文字より長い値を設定すると発生します。

説明

Create を呼び出してサーバー上にアーティクルを作成する前に、Name プロパティを設定する必要があります。 サーバー上にアーティクルが作成された後、このプロパティは設定できません。

Name プロパティを取得できるのは、パブリッシャー側およびサブスクライバー側 (サブスクライバーを再パブリッシュする場合) の固定サーバー ロール sysadmin のメンバーです。 また、パブリケーション データベースの固定データベース ロール db_owner のメンバー、および PAL のメンバーも取得できます。 MergeArticle オブジェクトの場合は、ディストリビューター側の固定データベース ロール replmonitor のメンバーも取得できます。

Name プロパティを設定できるのは、パブリッシャー側の固定サーバー ロール sysadmin のメンバーです。 また、パブリケーション データベースの固定データベース ロール db_owner のメンバーも設定できます。

Name を取得すると、sp_helparticle (Transact-SQL) (トランザクション レプリケーションまたはスナップショット レプリケーションの場合) または sp_helpmergearticle (Transact-SQL) (マージ レプリケーションの場合) を実行したのと同じことになります。

Name を設定すると、sp_addarticle (Transact-SQL) (トランザクション レプリケーションまたはスナップショット レプリケーションの場合) または sp_addmergearticle (Transact-SQL) (マージ レプリケーションの場合) を実行したのと同じことになります。

Name プロパティは、読み取り/書き込みプロパティです。

使用例

         // Define the Publisher, publication, and article names.
            string publisherName = publisherInstance;
            string publicationName = "AdvWorksProductTran";
            string publicationDbName = "AdventureWorks2012";
            string articleName = "Product";
            string schemaOwner = "Production";

            TransArticle article;

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

            // Create a filtered transactional articles in the following steps:
            // 1) Create the  article with a horizontal filter clause.
            // 2) Add columns to or remove columns from the article.
            try
            {
                // Connect to the Publisher.
                conn.Connect();

                // Define a horizontally filtered, log-based table article.
                article = new TransArticle();
                article.ConnectionContext = conn;
                article.Name = articleName;
                article.DatabaseName = publicationDbName;
                article.SourceObjectName = articleName;
                article.SourceObjectOwner = schemaOwner;
                article.PublicationName = publicationName;
                article.Type = ArticleOptions.LogBased;
                article.FilterClause = "DiscontinuedDate IS NULL";

                // Ensure that we create the schema owner at the Subscriber.
                article.SchemaOption |= CreationScriptOptions.Schema;

                if (!article.IsExistingObject)
                {
                    // Create the article.
                    article.Create();
                }
                else
                {
                    throw new ApplicationException(String.Format(
                        "The article {0} already exists in publication {1}.",
                        articleName, publicationName));
                }

                // Create an array of column names to remove from the article.
                String[] columns = new String[1];
                columns[0] = "DaysToManufacture";

                // Remove the column from the article.
                article.RemoveReplicatedColumns(columns);
            }
            catch (Exception ex)
            {
                // Implement appropriate error handling here.
                throw new ApplicationException("The article could not be created.", ex);
            }
            finally
            {
                conn.Disconnect();
            }
' Define the Publisher, publication, and article names.
Dim publisherName As String = publisherInstance
Dim publicationName As String = "AdvWorksProductTran"
Dim publicationDbName As String = "AdventureWorks2012"
Dim articleName As String = "Product"
Dim schemaOwner As String = "Production"

Dim article As TransArticle

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

' Create a filtered transactional articles in the following steps:
' 1) Create the  article with a horizontal filter clause.
' 2) Add columns to or remove columns from the article.
Try
    ' Connect to the Publisher.
    conn.Connect()

    ' Define a horizontally filtered, log-based table article.
    article = New TransArticle()
    article.ConnectionContext = conn
    article.Name = articleName
    article.DatabaseName = publicationDbName
    article.SourceObjectName = articleName
    article.SourceObjectOwner = schemaOwner
    article.PublicationName = publicationName
    article.Type = ArticleOptions.LogBased
    article.FilterClause = "DiscontinuedDate IS NULL"

    ' Ensure that we create the schema owner at the Subscriber.
    article.SchemaOption = article.SchemaOption Or _
    CreationScriptOptions.Schema

    If Not article.IsExistingObject Then
        ' Create the article.
        article.Create()
    Else
        Throw New ApplicationException(String.Format( _
         "The article {0} already exists in publication {1}.", _
         articleName, publicationName))
    End If

    ' Create an array of column names to remove from the article.
    Dim columns() As String = New String(0) {}
    columns(0) = "DaysToManufacture"

    ' Remove the column from the article.
    article.RemoveReplicatedColumns(columns)
Catch ex As Exception
    ' Implement appropriate error handling here.
    Throw New ApplicationException("The article could not be created.", ex)
Finally
    conn.Disconnect()
End Try

関連項目

参照

Article クラス

Microsoft.SqlServer.Replication 名前空間