Compartilhar via


Propriedade SyncAdapter.SelectIncrementalUpdatesCommand

Obtém ou define a consulta ou o procedimento armazenado usado para recuperar as atualizações feitas no banco de dados do servidor desde a última sincronização.

Namespace: Microsoft.Synchronization.Data.Server
Assembly: Microsoft.Synchronization.Data.Server (em microsoft.synchronization.data.server.dll)

Sintaxe

'Declaração
Public Property SelectIncrementalUpdatesCommand As IDbCommand
'Uso
Dim instance As SyncAdapter
Dim value As IDbCommand

value = instance.SelectIncrementalUpdatesCommand

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

/** @property */
public void set_SelectIncrementalUpdatesCommand (IDbCommand value)
public function get SelectIncrementalUpdatesCommand () : IDbCommand

public function set SelectIncrementalUpdatesCommand (value : IDbCommand)

Valor da propriedade

Um objeto IDbCommand que contém uma consulta ou um procedimento armazenado.

Comentários

Os comandos do adaptador de sincronização permitem especificar as consultas e os procedimentos armazenados usados para selecionar e aplicar alterações no banco de dados do servidor. Para obter mais informações, consulte Como especificar sincronização de instantâneo, de download, de carregamento e bidirecional. Cada comando usa variáveis de sessão que permitem passar valores durante a sincronização. Essas variáveis são especificadas como outros parâmetros para consultas ou procedimentos armazenados em comandos do ADO.NET. Para obter mais informações, consulte Como usar variáveis de sessão.

Exemplo

O exemplo de código a seguir cria um comando que seleciona linhas atualizadas da tabela Customer em cenários de sincronização bidirecional e somente para download. Para exibir esse código no contexto de um exemplo completo, consulte Como tratar conflitos de dados e erros.

SqlCommand customerIncrUpdates = new SqlCommand();
customerIncrUpdates.CommandText =
    "SELECT CustomerId, CustomerName, SalesPerson, CustomerType " +
    "FROM Sales.Customer " +
    "WHERE (UpdateTimestamp > @sync_last_received_anchor " +
    "AND UpdateTimestamp <= @sync_new_received_anchor " +
    "AND UpdateId <> @sync_client_id " +
    "AND NOT (InsertTimestamp > @sync_last_received_anchor " +
    "AND InsertId <> @sync_client_id))";
customerIncrUpdates.Parameters.Add("@" + SyncSession.SyncLastReceivedAnchor, SqlDbType.Timestamp);
customerIncrUpdates.Parameters.Add("@" + SyncSession.SyncNewReceivedAnchor, SqlDbType.Timestamp);
customerIncrUpdates.Parameters.Add("@" + SyncSession.SyncClientId, SqlDbType.UniqueIdentifier);
customerIncrUpdates.Connection = serverConn;
customerSyncAdapter.SelectIncrementalUpdatesCommand = customerIncrUpdates;
Dim customerIncrUpdates As New SqlCommand()
With customerIncrUpdates
    .CommandText = _
        "SELECT CustomerId, CustomerName, SalesPerson, CustomerType " _
      & "FROM Sales.Customer " _
      & "WHERE (UpdateTimestamp > @sync_last_received_anchor " _
      & "AND UpdateTimestamp <= @sync_new_received_anchor " _
      & "AND UpdateId <> @sync_client_id " _
      & "AND NOT (InsertTimestamp > @sync_last_received_anchor " _
      & "AND InsertId <> @sync_client_id))"
    .Parameters.Add("@" + SyncSession.SyncLastReceivedAnchor, SqlDbType.Timestamp)
    .Parameters.Add("@" + SyncSession.SyncNewReceivedAnchor, SqlDbType.Timestamp)
    .Parameters.Add("@" + SyncSession.SyncClientId, SqlDbType.UniqueIdentifier)
    .Connection = serverConn
End With
customerSyncAdapter.SelectIncrementalUpdatesCommand = customerIncrUpdates

Consulte também

Referência

Classe SyncAdapter
Membros SyncAdapter
Namespace Microsoft.Synchronization.Data.Server