Qual'è la diferenza dei due metodi applicabili ad un recordset?
Qual'è la diferenza dei due metodi applicabili ad un recordset?
In sostanza UpdateBatch - Scrive sul disco tutti gli aggiornamenti batch in sospeso, consentendo pertanto il loro annullamento. Per esempio:
' Chiede se si desidera confermare tutte le modifiche apportate in precedenza.
If MsgBox("Save all changes?", vbYesNo) = vbYes Then
rstTitles.UpdateBatch
Else
rstTitles.CancelBatch
End If
![]()
LM
Quindi se a fronte di un'operazione devo inevitabilmente eseguire un aggiornamento, senza possibilità di scelta, posso tranquillamente utilizzare il semplice Update?
Dipende da che metodo stai usando o ti serve d'usare:
Per intenderci quando fai un'operazione con il bancomat usi un Batch, in quanto se non confermi l'operazione corrente il tuo c/c non viene interessato dall'operazione stessa che a sua volta viene annullata.Gli aggiornamenti in batch vengono utilizzati quando si apre una connessione tramite la libreria di cursori Client Batch (rdUseClientBatch). In questo caso, ogni volta che si utilizza il metodo Update o UpdateRow, l'oggetto rdoResultset locale viene aggiornato, ma non viene apportata alcuna modifica alle tabelle del database di base. Il metodo BatchUpdate viene utilizzato per aggiornare la tabella o le tabelle del database di base con tutte le modifiche apportate dal momento dell'ultima creazione o sincronizzazione dell'oggetto rdoResultset tramite il comando BatchUpdate.
Per il resto dai un'occhiata al Metodo Update, ed al corrispondente "Buffer di transito"![]()
LM