Свойство CursorLocation
Для набора данных ADO в зависимости от его назначения можно выбрать тип и местоположение курсора, который используется. Местоположение курсора задается свойством CursorLocation. Курсор может находиться на сервере (clUseServer) или на клиенте (clUseClient). Серверный курсор используется при работе с большими наборами данных, которые нецелесообразно пересылать клиенту полностью. При этом несколько снижается скорость работы клиентского набора данных. Клиентский курсор обеспечивает передачу набора данных клиенту. Это положительно отражается на быстродействии, но такой курсор разумно использовать только для небольших наборов данных, которые не загружают канал связи с сервером.
Свойство MarshalOptions
При использовании клиентского курсора необходимо дополнительно установить свойство MarshalOptions, которое управляет обменом данных клиента с сервером. Если соединение с сервером быстрое, можно использовать значение moMarshalAll, что позволяет возвращение серверу всех записей набора данных. Иначе для ускорения работы компоненту можно применить свойство moMarshalModifiedOnly, что обеспечивает возвращение только модифицированных клиентом записей.
Свойство IndexFieldNames
Одним из преимуществ курсоров, которые работают на стороне клиента, есть возможность создания локальных, или клиентских, индексов. Пусть есть набор данных ADO с клиентским курсором, и этот набор соединен с таблицей Players. Пусть к этому набору подключенная сетка DBGrid. Если свойства IndexFieldNames присвоить значение Nom, то сетка немедленно отобразит записи, упорядочив их в соответствии со значением поля Nom. Важно отметить, что для формирования индекса ADO не читает заново данные из источника. Индекс формируется на основе данных, которые хранятся в памяти. Благодаря этому, во-первых, индекс формируется достаточно быстро, во-вторых, не создается никакой дополнительной нагрузки на сеть. Иначе одни и те же данные пришлось бы раз за вместе передавать через сеть в разном порядке сортировки.
Свойство IndexFieldNames владеет некоторыми другими интересными возможностями. Например, если присвоить этому свойству значения 'TeamName; Fam ', то записи сначала будут отсортированы в соответствии с названием команды, а потом в соответствии с фамилиями игроков. Если присвоить свойства IndexFieldNames значения 'Nom DESC ', то записи будут отсортированы в порядке убывания значений.
Свойство Sort
Для сортировки записей в свойство Sort Ado -наборів помещают список полей сортировки, разделенных запятыми. Каждое поле может дополнительно обеспечиваться признаками ASCENDING (ASC) или DESCENDING (DESC) для указания соответственно восходящего или нисходящего порядка сортировки. Например:
ADOTable1.Sort:='Fam ASC';
После выполнения данного кода записи в таблице будут отсортированы по полю Fam по возрастанию.
Дата добавления: 2016-02-27; просмотров: 1033;