Пятница, 17.05.2024, 20:39
Приветствую Вас, Гость | RSS
Продвинь свой сайт
Промо-материалы
Категории
SEO
Создание сайтов
Главная » Статьи » Microsoft Access » Microsoft Access [ Добавить статью ]

Использование объекта Recordset


Использование объекта Recordset


Открытие объекта Recordset предоставляет пользователю доступ к управлению обработкой информацией программным путем. Объект Recordset является представлением таблицы или запроса в оперативной памяти.
 

Можно создать три типа объектов Recordset: таблицу, динамический и статический наборы записей. Объект Recordset табличного типа может быть создан только на основе локальной таблицы. Открытие объекта Recordset табличного типа аналогично открытию таблицы в режиме таблицы в пользовательском интерфейсе. При открытии объекта Recordset в программе все записи загружаются в оперативную память. Главным преимуществом табличного типа является возможность быстрого поиска значений на основе индекса таблицы.


Объект Recordset типа статического набора записей представляет собой набор записей, доступных только для чтения и основанный на таблице, запросе или операторе SQL. Этот тип является представляет состояние записей на момент открытия объекта. Если записи меняются, то такой объект не отразит этих изменений. Примером статического набора записей является отчет.
Объект Recordset типа динамического набора записей представляет собой обновляемый набор записей, основанный на таблице, запросе или операторе SQL. Динамический набор записей может быть создан и на основе присоединенных таблиц Microsoft Access. Этот объект является наиболее используемым типом, так как обладает преимуществами по сравнению с уже рассмотренными. Например, объект Recordset типа динамического набора записей не загружает в оперативную память все записи, а использует закладки или указатели на записи. Объект Recordset типа динамического набора записей, в отличие от статического набора записей, может редактироваться и обрабатываться. Он отражает изменения, произведенные в источнике данных.

Для открытия объекта Recordset, используется метод OpenRecordset объекта Database. Метод OpenRecordset имеет три параметра:
Source - параметр, являющийся именем таблицы или запроса, либо оператором SQL, на котором основан объект Recordset.
Type - параметр, указывающий на тип создаваемого объекта (константа dbOpenTable -таблица; константа dbOpenSnapshot - статический набор записей; константа - dbOpenDynaset - динамический набор записей).
Options - аргумент, указывающий параметры открываемого объекта (см. Предметный указатель справочной системы).
Следующий пример демонстрирует создание объекта Recordset табличного типа с параметром, позволяющим только просматривать данные до тех пор, пока объект Recordset не будет закрыт.
Dim dbMy As Database, rsMy As Recordset
Set dbMy = CurrentDb
    ' Создание объекта Recordset табличного типа
Set rsMy = dbMy.OpenRecordset("Локальная таблица", dbOpenTable, dbReadOnly)
После того, как работа с объектом Recordset закончена его необходимо закрыть (удалить из памяти) с помощью метода Close:
Например,
rsMy.Close
dbMy.Close
Аналогично создаются объекты Recordset на основе других наборов записей.
Можно ограничить количество записей в объекте Recordset, используя свойство Filter, или отсортировать записи с помощью свойства Sort.
Например,
Dim dbMy As Database, rsMy1 As Recordset
Dim rsMy2 As Recordset
Set dbMy = CurrentDb
rsMy1.Filter="Должность = 'Программист' "
rsMy1.Sort="Отдел Desc, ФИО Asc"
Set rsMy2=rsMy1.OpenRecordset

Для перемещения по записям используются следующие методы объекта Recordset:
MoveFirst, MoveLast, MoveNext, MovePrevious, Move <№ записи>

Для предотвращения выхода за границу последней записи можно воспользоваться свойством RecordCount и циклом For...Next.
Проанализируйте следующий фрагмент программы:
rsMy.MoveLast
kol = rsMy.RecordCount
rsMy.MoveFirst
For i = 1 to kol
For Each fldMy in rsMy.Fields
Msgbox fldMy.Value, 0, "Просмотр записей"
Next
rsMy.MoveNext
next i
Для добавления, удаления и редактирования данных используются следующие методы объекта Recordset
AddNew,  Delete,  Edit.
Для сохранения вставок и обновлений записей применяется метод Update. Метод  CancelUpdate отменяет любые вставки и изменения, которые были выполнены после последнего Update.
Пример фрагмента программного кода редактирования последней записи выглядит следующим образом:
rsMy.MoveLast
rsMy("ФИО")="Сидоров"
rsMy("Должность")="Техник"
rsMy.UpDate
Удаление записи не требует последующего обновления.
Для создания процедур поиска используются следующие методы объекта Recordset:
FindFirst,  FindLast,  FindNext.
Назначение их очевидно и не требует пояснений.
Пример поиска записи, удовлетворяющей заданному критерию:
Cr = "[Фамилия] = 'Сидоров' "
rsMy.FindFirst Cr
MsgBox rsMy("Должность") & " " & rsMy("Отдел"), 0, "Результат поиска"

Порядок выполнения работы
1. Откройте базу данных.
2. Найдите записи, удовлетворяющие заданному критерию, используя свойства и методы объекта Recordset. Для этого
•    В одну из созданных ранее форм добавьте кнопку, при нажатии на которую, осуществляется поиск записи. Значение критерия поиска записей введите в режиме диалога.
Предусмотрите обработку ошибки при отсутствии записей в объекте и при выходе за границу последней записи.
•    Запустите программу на выполнение и покажите результаты преподавателю.
3. Создайте еще одну кнопку для выполнения программы отбора записей. Например, данных о студентах одного из факультетов, имеющих средний балл более 4. Предусмотрите сортировку данных по произвольно выбранному полю и вывод результатов отбора в окно MSGBOX и новое поле формы.
4. Завершите сеанс работы с БД.
Категория: Microsoft Access | Добавил: Администратор (11.01.2011)
Просмотров: 12213 | Комментарии: 3 | Теги: Открытие объекта Recordset предоста | Рейтинг: 5.0/1
Всего комментариев: 3
3 Michellex  
1
Good afternoon
Some people have trouble speaking with their doctors about sex. http://top.bestselers.info/ciallis/index.html - http://top.bestselers.info/priligy/site_map.html
Bye !!
____________________________
http://top.bestselers.info/cillis/site_map.html - cheapest anywhere smile

2 Mackenziex  
1
Good afternoon
As for Extenze, investigations revealed that Extenze’s lead content was beyond the legal limits, causing some of those who used it complain against the product. http://top.bestselers.info/vigera/index.html - http://top.bestselers.info/ciallis/site_map.html
Goodluck!!!
____________________________
http://top.bestselers.info/vigra/site_map.html - online buy smile

1 AndrossNFW  
1
Ваш сайт - colorado.ucoz.com показался мне очень привлекательным и перспективным.
Хочу приобрести рекламное место для баннера в шапке Вашего сайта.
Какова будет стоимость данной услуги?
Оплачивать буду через WebMoney, 50% сразу, а 50% через 2 недели.

И еще, адрес моего сайта http://megasto.com.ua/ - он не будет противоречть тематике Вашего сайта?

Напишите о Вашем решении мне на почту megasto.com.ua@gmail.com
Заранее благодарен за оперативный ответ.

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Добавь новость

Добавьте свою новость на сайт.

Добавить
Самое интересное
Для отображения блока требуется Flash Player

контент бесплатно оптимизация SEO сереты база данных Microsoft_Access прибыль Сайт - посетители или контент дорвей обман поисковая система раскрутка SMM SMO мультимедиа Раскрутка сайта видео уроки Оптимизация сайта и анализ microsoft access база панель управления проектирование Основы программирования на Visual B google RRS коментарии ррс Свежие новости быстродействие Китай Новости Открытие объекта Recordset предоста установка мета видео установка Joomla локальный мавроди ммм Пирамида уроки Joomla бонусное видео внимание предупреждение инструменты настройка компоненты модули плагины Joomla тиц pr ап Последний категории материалы разделы животные в природе обои pagepromoter platinum комплекс продвижение контент плагиат Сайт автоматически каталоги продвинуть регистрация FTP клиент сервер размножение генератор яндекс анализ robot.txt видимость сайта посковая система рамблер бесплатно Шаблон Необьяснимое фото пришельцев dle скачать пришельцы скачать бесплатно НЛО шаблоншаблон DSL joomla море океан Природа - коллекция обоев мото авто обои HD качества новый год праздник 3D Разное
Поиск
Обратная связь
Вход