共用方式為


EnumDatabaseSubscriptions 方法

Returns information on subscriptions that belong to publications that use a specified publication database.

命名空間:  Microsoft.SqlServer.Replication
組件:  Microsoft.SqlServer.Rmo (在 Microsoft.SqlServer.Rmo.dll 中)

語法

'宣告
Public Function EnumDatabaseSubscriptions ( _
    publicationDatabase As String, _
    publicationType As PublicationType, _
    resultOption As SubscriptionResultOption _
) As DataSet
'用途
Dim instance As PublisherMonitor
Dim publicationDatabase As String
Dim publicationType As PublicationType
Dim resultOption As SubscriptionResultOption
Dim returnValue As DataSet

returnValue = instance.EnumDatabaseSubscriptions(publicationDatabase, _
    publicationType, resultOption)
public DataSet EnumDatabaseSubscriptions(
    string publicationDatabase,
    PublicationType publicationType,
    SubscriptionResultOption resultOption
)
public:
DataSet^ EnumDatabaseSubscriptions(
    String^ publicationDatabase, 
    PublicationType publicationType, 
    SubscriptionResultOption resultOption
)
member EnumDatabaseSubscriptions : 
        publicationDatabase:string * 
        publicationType:PublicationType * 
        resultOption:SubscriptionResultOption -> DataSet 
public function EnumDatabaseSubscriptions(
    publicationDatabase : String, 
    publicationType : PublicationType, 
    resultOption : SubscriptionResultOption
) : DataSet

參數

傳回值

型別:System.Data. . :: . .DataSet
A DataSet object that has the following columns.

Column name

Data type

Description

status

int

Maximum status of all replication agents associated with the publication, which can be one of these values:

1 = Started

2 = Succeeded

3 = In progress

4 = Idle

5 = Retrying

6 = Failed

warning

int

Maximum threshold warning generated by a subscription belonging to the publication, which can be the logical OR result of one or more of these values.

1 = expiration – a subscription to a transactional publication has not been synchronized within the retention period threshold.

2 = latency - the time taken to replicate data from a transactional Publisher to the Subscriber exceeds the threshold, in seconds.

4 = mergeexpiration - a subscription to a merge publication has not been synchronized within the retention period threshold.

8 = mergefastrunduration - the time taken to complete synchronization of a merge subscription exceeds the threshold, in seconds, over a fast network connection.

16 = mergeslowrunduration - the time taken to complete synchronization of a merge subscription exceeds the threshold, in seconds, over a slow or dial-up network connection.

32 = mergefastrunspeed – the delivery rate for rows during synchronization of a merge subscription has failed to maintain the threshold rate, in rows per second, over a fast network connection.

64 = mergeslowrunspeed – the delivery rate for rows during synchronization of a merge subscription has failed to maintain the threshold rate, in rows per second, over a slow or dial-up network connection.

subscriber

sysname

Is the name of the Subscriber.

subscriber_db

sysname

Is the name of the database used for the subscription.

publisher_db

sysname

Is the name of the publication database.

publication

sysname

Is the name of a publication.

publication_type

int

Is the type of publication, which can be one of these values:

0 = Transactional publication

1 = Snapshot publication

2 = Merge publication

subtype

int

Is the subscription type, which can be one of the following values:

0 = Push

1 = Pull

2 = Anonymous

latency

int

The highest latency, in seconds, for data changes propagated by the Log Reader or Distribution Agents for a transactional publication.

latencythreshold

int

Is the maximum latency for the transactional publication above which a warning is raised.

agentnotrunning

int

Is the length of time, in hours, during which the agent has not run.

agentnotrunningthreshold

int

Is the length of time, in hours, that the agent has not run before a warning is raised.

timetoexpiration

int

Is the length of time, in hours, before the subscription expires if not synchronized.

expirationthreshold

int

Is the time, in hours, before the subscription expires that a warning is raised.

last_distsync

datetime

Is the date and time that the Distribution Agent last ran.

distribution_agentname

sysname

Is the name of the Distribution Agent job for the subscription to a transactional publication.

mergeagentname

sysname

Is the name of the Merge Agent job for the subscription to a merge publication.

mergesubscriptionfriendlyname

sysname

Is the friendly name given to the subscription.

mergeagentlocation

sysname

Is the name of the server on which the Merge Agent runs.

mergeconnectiontype

int

Connection used when synchronizing a subscription to a merge publication, which can be one of the following values:

1 = local area network (LAN)

2 = dial-up network connection

3 = Web synchronization.

mergePerformance

int

Performance of the last synchronization compared to all synchronizations for the subscription. This is based on the delivery rate of the last synchronization divided by the average of all previous delivery rates.

mergerunspeed

float

Is the delivery rate of the last synchronization for the subscription.

mergerunduration

int

Is the length of time to complete the last synchronization of the subscription.

monitorranking

int

Is the ranking value used to order the subscriptions in the result set, and can be one of these values.

For a transactional publication:

60 = Error

56 = Warning: performance critical

52 = Warning: expiring soon or expired

50 = Warning: subscription uninitialized

40 = Retrying failed command

30 = Not running (success)

20 = Running (starting, running, or idle)

For a merge publication:

60 = Error

56 = Warning: performance critical

54 = Warning: long-running merge

52 = Warning: expiring soon or expired

50 = Warning: subscription uninitialized

40 = Retrying failed command

30 = Running (starting, running, or idle)

20 = Not running (success)

distributionagentjobid

binary(16)

ID of the Distribution Agent job for subscriptions to a transactional publication.

mergeagentjobid

binary(16)

ID of the Merge Agent job for subscriptions to a merge publication.

distributionagentid

int

ID of the Distribution Agent job for the subscription.

distributionagentprofileid

int

ID of the agent profile used by the Distribution Agent.

mergeagentid

int

ID of the Merge Agent job for the subscription.

mergeagentprofileid

int

ID of the agent profile used by the Merge Agent.

備註

The EnumDatabaseSubscriptions method can only be called by members of the db_owner or replmonitor fixed database roles on the distribution database.

Calling EnumDatabaseSubscriptions is equivalent to executing sp_replmonitorhelpsubscription.