Свойство Recordset.BatchSize (DAO)
Область применения: Access 2013, Office 2013
Синтаксис
expression . Batchsize
expression: переменная, представляющая объект Recordset.
Примечания
Свойство BatchSize определяет размер пакета, используемый при отправке инструкций на сервер в пакетном обновлении. Значение свойства определяет количество инструкций, отправленных на сервер в одном буфере команд. По умолчанию на сервер в каждом пакете отправляется 15 инструкций. Это свойство можно изменить в любое время. Если сервер базы данных не поддерживает пакетную обработку инструкций, можно задать для этого свойства значение 1, что приведет к отправке каждой инструкции отдельно.
Пример
В этом примере свойства BatchSize и UpdateOptions используются для управления аспектами любого пакетного обновления для указанного объекта Recordset.
Sub BatchSizeX()
Dim wrkMain As Workspace
Dim conMain As Connection
Dim rstTemp As Recordset
Set wrkMain = CreateWorkspace("ODBCWorkspace", _
"admin", "", dbUseODBC)
' This DefaultCursorDriver setting is required for
' batch updating.
wrkMain.DefaultCursorDriver = dbUseClientBatchCursor
' Note: The DSN referenced below must be configured to
' use Microsoft Windows NT Authentication Mode to
' authorize user access to the Microsoft SQL Server.
Set conMain = wrkMain.OpenConnection("Publishers", _
dbDriverNoPrompt, False, _
"ODBC;DATABASE=pubs;DSN=Publishers")
' The following locking argument is required for
' batch updating.
Set rstTemp = conMain.OpenRecordset( _
"SELECT * FROM roysched", dbOpenDynaset, 0, _
dbOptimisticBatch)
With rstTemp
' Increase the number of statements sent to the server
' during a single batch update, thereby reducing the
' number of times an update would have to access the
' server.
.BatchSize = 25
' Change the UpdateOptions property so that the WHERE
' clause of any batched statements going to the server
' will include any updated columns in addition to the
' key column(s). Also, any modifications to records
' will be made by deleting the original record
' and adding a modified version rather than just
' modifying the original record.
.UpdateOptions = dbCriteriaModValues + _
dbCriteriaDeleteInsert
' Engage in batch updating using the new settings
' above.
' ...
.Close
End With
conMain.Close
wrkMain.Close
End Sub