Поделиться через


Свойство QueryDef.MaxRecords (DAO)

Область применения: Access 2013, Office 2013

Задает или возвращает максимальное количество записей, возвращаемых из запроса к источнику данных ODBC.

Синтаксис

expression . MaxRecords

выражение: переменная, представляющая объект QueryDef.

Примечания

Значение по умолчанию — 0, указывающее, что количество возвращаемых записей не ограничено.

После того как количество строк, указанное Параметром MaxRecords, будет возвращено приложению в наборе записей, обработчик запросов перестанет возвращать дополнительные записи, даже если для включения в набор записей будет разрешено больше записей. Это свойство удобно в ситуациях, когда ограниченные клиентские ресурсы запрещают управление большим количеством записей.

Примечание.

Свойство MaxRecords можно использовать только с источником данных ODBC.

Пример

В этом примере свойство MaxRecords используется для задания ограничения количества записей, возвращаемых запросом к источнику данных ODBC.

Sub MaxRecordsX() 
 
 Dim dbsCurrent As Database 
 Dim qdfPassThrough As QueryDef 
 Dim qdfLocal As QueryDef 
 Dim rstTemp As Recordset 
 
 ' Open a database from which QueryDef objects can be 
 ' created. 
 Set dbsCurrent = OpenDatabase("DB1.mdb") 
 
 ' Create a pass-through query to retrieve data from 
 ' a Microsoft SQL Server database. 
 Set qdfPassThrough = _ 
 dbsCurrent.CreateQueryDef("") 
 
 ' Set the properties of the new query, limiting the 
 ' number of returnable records to 20. 
 ' Note: The DSN referenced below must be configured to 
 ' use Microsoft Windows NT Authentication Mode to 
 ' authorize user access to the Microsoft SQL Server. 
 qdfPassThrough.Connect = _ 
 "ODBC;DATABASE=pubs;DSN=Publishers" 
 qdfPassThrough.SQL = "SELECT * FROM titles" 
 qdfPassThrough.ReturnsRecords = True 
 qdfPassThrough.MaxRecords = 20 
 
 Set rstTemp = qdfPassThrough.OpenRecordset() 
 
 ' Display results of query. 
 Debug.Print "Query results:" 
 With rstTemp 
 Do While Not .EOF 
 Debug.Print , .Fields(0), .Fields(1) 
 .MoveNext 
 Loop 
 .Close 
 End With 
 
 dbsCurrent.Close 
 
End Sub