Article.DatabaseName Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft den Namen der Datenbank ab, die die Daten und Objekte enthält, die im Artikel veröffentlicht werden, oder legt ihn fest.
public:
property System::String ^ DatabaseName { System::String ^ get(); void set(System::String ^ value); };
public string DatabaseName { get; set; }
member this.DatabaseName : string with get, set
Public Property DatabaseName As String
Eigenschaftswert
Der Name der Veröffentlichungsdatenbank.
Ausnahmen
Wenn Sie versuchen, die DatabaseName Eigenschaft für einen vorhandenen Artikel festzulegen.
Wenn Sie die Eigenschaft auf einen Wert, auf einen null
Wert mit null
Zeichen oder auf einen Wert festlegen, der DatabaseName länger als 128 Unicode-Zeichen ist.
Beispiele
// 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
Hinweise
Die DatabaseName Eigenschaft ist eine Lese-/Schreibeigenschaft.
Die DatabaseName -Eigenschaft muss festgelegt werden, bevor die Create -Methode aufgerufen wird, um den Artikel auf dem Server zu erstellen. Wenn Sie versuchen, diese Eigenschaft für einen vorhandenen Artikel festzulegen, wird eine Ausnahme generiert.
Die DatabaseName -Eigenschaft muss auf den Namen der Verteilungsdatenbank für nicht SQL Server Veröffentlichungen festgelegt werden.
Die DatabaseName -Eigenschaft kann von Mitgliedern der sysadmin
festen Serverrolle beim Verleger und beim Abonnenten (für die erneute Veröffentlichung von Abonnenten) abgerufen werden. Sie kann auch von Mitgliedern der festen Datenbankrolle in der db_owner
Veröffentlichungsdatenbank und von Benutzern abgerufen werden, die Mitglieder der PAL sind. Für ein MergeArticle Objekt kann diese Eigenschaft auch von Mitgliedern der replmonitor
festen Datenbankrolle auf dem Verteiler abgerufen werden.
Die DatabaseName -Eigenschaft kann von Mitgliedern der sysadmin
festen Serverrolle auf dem Verleger festgelegt werden. Sie kann auch von Mitgliedern der db_owner
festen Datenbankrolle in der Veröffentlichungsdatenbank festgelegt werden.
Das Abrufen DatabaseName entspricht dem Ausführen sp_helparticle (Transact-SQL) für die Transaktions- oder Momentaufnahmereplikation oder dem Ausführen sp_helpmergearticle (Transact-SQL) für die Mergereplikation.
Die Einstellung DatabaseName entspricht dem Ausführen sp_addarticle (Transact-SQL) für die Transaktions- oder Momentaufnahmereplikation oder dem Ausführen sp_addmergearticle (Transact-SQL) für die Mergereplikation.