Clase ReplicationAgentSchedule
Represents the schedule for a replication agent job.
Jerarquía de herencia
System. . :: . .Object
Microsoft.SqlServer.Replication..::..ReplicationAgentSchedule
Espacio de nombres: Microsoft.SqlServer.Replication
Ensamblado: Microsoft.SqlServer.Rmo (en Microsoft.SqlServer.Rmo.dll)
Sintaxis
'Declaración
Public NotInheritable Class ReplicationAgentSchedule
'Uso
Dim instance As ReplicationAgentSchedule
public sealed class ReplicationAgentSchedule
public ref class ReplicationAgentSchedule sealed
[<SealedAttribute>]
type ReplicationAgentSchedule = class end
public final class ReplicationAgentSchedule
El tipo ReplicationAgentSchedule expone los siguientes miembros.
Constructores
Nombre | Descripción | |
---|---|---|
ReplicationAgentSchedule | Creates a new instance of the ReplicationAgentSchedule class. |
Arriba
Propiedades
Nombre | Descripción | |
---|---|---|
ActiveEndDate | Gets or sets the date the scheduled activity is to stop running. | |
ActiveEndTime | Gets or sets the time the scheduled activity is to stop running. | |
ActiveStartDate | Gets or sets the date of the first occurrence of the scheduled activity. | |
ActiveStartTime | Gets or sets the time of the first occurrence of the scheduled activity. | |
FrequencyInterval | Gets or sets the interval between occurrences of a scheduled activity. | |
FrequencyRecurrenceFactor | Gets or sets the frequency recurrence factor. | |
FrequencyRelativeInterval | Gets or sets a time of occurrence that is relative to the first day of the month. | |
FrequencySubDay | Gets or sets the frequency in minutes for scheduled activities that occur several times a day. | |
FrequencySubDayInterval | Gets or sets the interval between scheduled activities that occur several times in one day. | |
FrequencyType | Gets or sets the frequency for a scheduled activity. |
Arriba
Métodos
Nombre | Descripción | |
---|---|---|
Equals | (Se hereda de Object.) | |
Finalize | (Se hereda de Object.) | |
GetHashCode | (Se hereda de Object.) | |
GetType | (Se hereda de Object.) | |
MemberwiseClone | (Se hereda de Object.) | |
ToString | (Se hereda de Object.) | |
Update | Updates an existing schedule on the server. |
Arriba
Comentarios
This namespace, class, or member is supported only in version 2.0 of the .NET Framework.
Thread Safety
Any public static (Shared in Microsoft Visual Basic) members of this type are safe for multithreaded operations. Any instance members are not guaranteed to be thread safe.
Ejemplos
// Define the server, database, and publication names
string publisherName = publisherInstance;
string publicationName = "AdvWorksSalesOrdersMerge";
string publicationDbName = "AdventureWorks2008R2";
string distributorName = publisherInstance;
MergePublication publication;
MergePartition partition;
MergeDynamicSnapshotJob snapshotAgentJob;
ReplicationAgentSchedule schedule;
// Create a connection to the Publisher.
ServerConnection publisherConn = new ServerConnection(publisherName);
// Create a connection to the Distributor to start the Snapshot Agent.
ServerConnection distributorConn = new ServerConnection(distributorName);
try
{
// Connect to the Publisher.
publisherConn.Connect();
// Set the required properties for the publication.
publication = new MergePublication();
publication.ConnectionContext = publisherConn;
publication.Name = publicationName;
publication.DatabaseName = publicationDbName;
// If we can't get the properties for this merge publication,
// then throw an application exception.
if (publication.LoadProperties() || publication.SnapshotAvailable)
{
// Set a weekly schedule for the filtered data snapshot.
schedule = new ReplicationAgentSchedule();
schedule.FrequencyType = ScheduleFrequencyType.Weekly;
schedule.FrequencyRecurrenceFactor = 1;
schedule.FrequencyInterval = Convert.ToInt32(0x001);
// Set the value of Hostname that defines the data partition.
partition = new MergePartition();
partition.DynamicFilterHostName = hostname;
snapshotAgentJob = new MergeDynamicSnapshotJob();
snapshotAgentJob.DynamicFilterHostName = hostname;
// Create the partition for the publication with the defined schedule.
publication.AddMergePartition(partition);
publication.AddMergeDynamicSnapshotJob(snapshotAgentJob, schedule);
}
else
{
throw new ApplicationException(String.Format(
"Settings could not be retrieved for the publication, " +
" or the initial snapshot has not been generated. " +
"Ensure that the publication {0} exists on {1} and " +
"that the Snapshot Agent has run successfully.",
publicationName, publisherName));
}
}
catch (Exception ex)
{
// Do error handling here.
throw new ApplicationException(string.Format(
"The partition for '{0}' in the {1} publication could not be created.",
hostname, publicationName), ex);
}
finally
{
publisherConn.Disconnect();
if (distributorConn.IsOpen) distributorConn.Disconnect();
}
' Define the server, database, and publication names
Dim publisherName As String = publisherInstance
Dim publicationName As String = "AdvWorksSalesOrdersMerge"
Dim publicationDbName As String = "AdventureWorks2008R2"
Dim distributorName As String = publisherInstance
Dim publication As MergePublication
Dim partition As MergePartition
Dim snapshotAgentJob As MergeDynamicSnapshotJob
Dim schedule As ReplicationAgentSchedule
' Create a connection to the Publisher.
Dim publisherConn As ServerConnection = New ServerConnection(publisherName)
' Create a connection to the Distributor to start the Snapshot Agent.
Dim distributorConn As ServerConnection = New ServerConnection(distributorName)
Try
' Connect to the Publisher.
publisherConn.Connect()
' Set the required properties for the publication.
publication = New MergePublication()
publication.ConnectionContext = publisherConn
publication.Name = publicationName
publication.DatabaseName = publicationDbName
' If we can't get the properties for this merge publication,
' then throw an application exception.
If (publication.LoadProperties() Or publication.SnapshotAvailable) Then
' Set a weekly schedule for the filtered data snapshot.
schedule = New ReplicationAgentSchedule()
schedule.FrequencyType = ScheduleFrequencyType.Weekly
schedule.FrequencyRecurrenceFactor = 1
schedule.FrequencyInterval = Convert.ToInt32("0x001", 16)
' Set the value of Hostname that defines the data partition.
partition = New MergePartition()
partition.DynamicFilterHostName = hostname
snapshotAgentJob = New MergeDynamicSnapshotJob()
snapshotAgentJob.DynamicFilterHostName = hostname
' Create the partition for the publication with the defined schedule.
publication.AddMergePartition(partition)
publication.AddMergeDynamicSnapshotJob(snapshotAgentJob, schedule)
Else
Throw New ApplicationException(String.Format( _
"Settings could not be retrieved for the publication, " + _
" or the initial snapshot has not been generated. " + _
"Ensure that the publication {0} exists on {1} and " + _
"that the Snapshot Agent has run successfully.", _
publicationName, publisherName))
End If
Catch ex As Exception
' Do error handling here.
Throw New ApplicationException(String.Format( _
"The partition for '{0}' in the {1} publication could not be created.", _
hostname, publicationName), ex)
Finally
publisherConn.Disconnect()
If distributorConn.IsOpen Then
distributorConn.Disconnect()
End If
End Try
Seguridad para subprocesos
Cualquier miembro público static (Shared en Visual Basic) de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.
Vea también