共用方式為


DbServerSyncProvider.SelectNewAnchorCommand 屬性

取得或設定 IDbCommand 物件,此物件包含了會從伺服器資料庫傳回新錨定 (Anchor) 值的查詢或預存程序。此錨定會定義目前工作階段期間要同步處理之變更集合的上限 (Upper Bound)。

命名空間: Microsoft.Synchronization.Data.Server
組件: Microsoft.Synchronization.Data.Server (在 microsoft.synchronization.data.server.dll)

語法

'宣告
Public Property SelectNewAnchorCommand As IDbCommand
'用途
Dim instance As DbServerSyncProvider
Dim value As IDbCommand

value = instance.SelectNewAnchorCommand

instance.SelectNewAnchorCommand = value
public IDbCommand SelectNewAnchorCommand { get; set; }
public:
property IDbCommand^ SelectNewAnchorCommand {
    IDbCommand^ get ();
    void set (IDbCommand^ value);
}
/** @property */
public IDbCommand get_SelectNewAnchorCommand ()

/** @property */
public void set_SelectNewAnchorCommand (IDbCommand value)
public function get SelectNewAnchorCommand () : IDbCommand

public function set SelectNewAnchorCommand (value : IDbCommand)

屬性值

包含查詢或預存程序的 IDbCommand 物件。

備註

在目前的同步處理期間,新的錨定命令會提供新的錨定值。會在上一次收到錨定值之後以及新收到的錨定值同步處理之前進行變更。然後會儲存新收到的錨定,並在下一次同步處理時將它當做上一次收到的錨定值。如需詳細資訊,請參閱 追蹤伺服器資料庫中的變更中的<判斷要將哪些資料變更下載到用戶端>一節。

範例

下列程式碼範例指定可從伺服器擷取新錨定值的命令。在此情況下,MIN_ACTIVE_ROWVERSION 會從 SQL Server 資料庫傳回時間戳記值 (MIN_ACTIVE_ROWVERSION 已在 SQL Server 2005 Service Pack 2 中導入)。使用時間戳記值的原因,是因為伺服器資料庫中的追蹤資料行包含時間戳記值。如果追蹤資料行包含了日期值,您可以使用類似 GETUTCDATE() 的函式 (而非 MIN_ACTIVE_ROWVERSION)。SyncSession 包含幾個可用於同步處理命令的字串常數,SyncNewReceivedAnchor 就是其中之一。您也可以直接在您的查詢中使用常值 @sync_new_received_anchor。若要在完整範例的內容中檢視這段程式碼,請參閱 使用者入門:用戶端與伺服器同步處理

SqlCommand selectNewAnchorCommand = new SqlCommand();
string newAnchorVariable = "@" + SyncSession.SyncNewReceivedAnchor;
selectNewAnchorCommand.CommandText = "SELECT " + newAnchorVariable + " = min_active_rowversion() - 1";
selectNewAnchorCommand.Parameters.Add(newAnchorVariable, SqlDbType.Timestamp);
selectNewAnchorCommand.Parameters[newAnchorVariable].Direction = ParameterDirection.Output;
selectNewAnchorCommand.Connection = serverConn;
this.SelectNewAnchorCommand = selectNewAnchorCommand;
Dim selectNewAnchorCommand As New SqlCommand()
Dim newAnchorVariable As String = "@" + SyncSession.SyncNewReceivedAnchor
selectNewAnchorCommand.CommandText = "SELECT " + newAnchorVariable + " = min_active_rowversion() - 1"
selectNewAnchorCommand.Parameters.Add(newAnchorVariable, SqlDbType.Timestamp)
selectNewAnchorCommand.Parameters(newAnchorVariable).Direction = ParameterDirection.Output
selectNewAnchorCommand.Connection = serverConn
Me.SelectNewAnchorCommand = selectNewAnchorCommand

請參閱

參考

DbServerSyncProvider 類別
DbServerSyncProvider 成員
Microsoft.Synchronization.Data.Server 命名空間