Рефераты. Програмирование на Visual Basic

Visual Basic)

. DatabaseName (имя базы данных) определяет имя файла базы данных или

переход.

. EditMode возвращает значение, определяющее состояние редактирования

для текущей записи.

. Exclusive определяет использование базы данных одни или несколькими

пользователями (True — использование одним пользователем. False (по

умолчанию) — несколько пользователей).

. Readonly определяет возможность редактирования ото-// бражаемого

данного в элементе управления (False (по умолчанию) — редактирование

возможно, True — невозможно).

. Recordset возвращает или устанавливает объект Recordset, определенный

свойствами элемента управления Data или существующим объектом

Recordset.

Элемент Data автоматически инициализируется при запуске приложения. Если

свойства Connect, DatabaseName, Options, RecordSource, RecordSource,

Exclusive, ReadOnly и RecordsetType установлены или, если они

устанавливаются на этапе выполнения при использовании метода Refresh,

механизм баз данных Jet пытается создавать новый объект Recordset,

основанный на этих свойствах. Этот объект Recordset доступен через свойства

элемента управление Data.

Важно: ссылаться на свойства объекта Recordset, создаваемого элементом

управления Data, можно только используя свойство Recordset самого элемента

Data. Синтаксис такого определения свойства следующий:

о^бетс/и/.свойствоА.свойствоБ определяет свойствоБ некоторого объекта,

адресуемое через свойствоА объекта!.

Объект Recordset представляет запись в основной таблице или запись, которая

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

к данным, то это происходит с использованием объектов Recordset. Таблица.

Recordset есть представление основной таблицы. Dynaset-тип.Recordset —

динамический набор записей. Кадр. Recordset — статическая копия множества

записей (может содержать поля из одной или более таблиц в базе данных, но

не может модифицироваться).

. RecordsetType определяет тип набора записей, который можно

использовать для доступа к данным. Существует три типа наборов

записей: таблица. Dynaset (динамическое множество) или кадр

(моментальный снимок). Соответственно свойство принимает значения 0,

1,2.

При использовании Data для доступа к базе данных по умолчанию создается

набор записей динамического типа, который является набором указателей на

информацию. Динамический набор является очень гибким, но имеет ряд

ограничений при использовании (в частности не поддерживает созданные

индексы, что не позволяет динамически изменять порядок представления

записей в наборе).

При задании типа набора “Таблица” возможен доступ только к одной полной

таблице с использованием индекса для упорядочения, но обновление данных

отображается медленно.

При задании типа набора “Кадр” работа выполняется с копией данных.

Достоинством является быстрота, но требует ресурсов памяти и невозможно

обновление данных.

. RecordSource (источник данных) определяет, откуда извлечь данные. Это

может быть имя таблицы либо конкретное логическое представление данных

(запрос).

Для объекта Data при работе с базами данных существует понятие базовых

элементов управления — непосредственно связаны с единственным полем в

наборе записей и не требуют дополнительного определения, кроме имени поля,

задаваемого для некоторого свойства элемента управления. Например, для

текстового окна (TextBox) присвоение свойства Text может содержать значение

поля базы данных (тип данных: строка символов, арифметический тип, дата) и

определяется заданием свойств DataSource (указывается имя объекта Data) и

DataField (указывается имя поля таблицы, установленной свойством Data-

Source объекта Data). Окна изображений и рисунков можно использовать для

показа картинок, хранящихся в базе данных, флажок — для отображения булевых

значений.

В комплекте Visual Basic имеется база данных B1BLIO.MDB, содержащая

библиографические сведения по Visual Basic. Она состоит из трех таблиц.

Таблица Авторы (Authors) с полями идентификационный номер (Au_lD) и фамилия

автора (Authors). Таблица издательств (Pablishers) с полями

идентификационный

номер (PubID), название (Name), компания владелец (Company Name), адрес

(Address), город (City), штат (State), код (Zip), теле-tboH (Telephone).

Таблица Названия книг (Titles) содержит список опубликованных книг:

название (Title), год публикации (Year published) и ссылки на первые две

таблицы.

Используем элемент управления Data для доступа к этой базе данных. Создадим

форму (рис. 5.1) с элементом управления Data, с тремя метками и с тремя

текстовыми окнами для вывода соответствующей информации из базы данных

B1BLIO.MDB. Свойствам объекта Data присваиваются следующие значения:

DataBaseName = C:\VB4\BIBLIO.MBD

RecordSourse = Pablishers

Connect = Access.

Для подключения базы данных (задание значения свойства DataBaseName =

C:\VB4\BIBLIO.MBD) используется специальное окно (рис. 5.2).

[pic]

Свойствам объекта Textl (текстовое окно с заголовком “Издательство”)

присваиваются значения:

DataSourse = Datal (имя элемента Data — Datal), DataField = Name (Name —

имя поля таблицы издательств). *

Рис. 5.

Свойствам объекта Text2 (текстовое окно с заголовком “Город”) присваиваются

значения: DataSourse = Datal (имя элемента Data — Datal), DataField = City

( City — имя поля таблицы издательств).

Свойствам объекта Text3 (текстовое окно с заголовком “Телефон”)

присваиваются значения: DataSourse = Datal (имя элемента Data — Datal),

DataField = Telephone (Telephone — имя поля таблицы издательств).

Созданное приложение позволяет просматривать базу данных, получая из нее

указанную информацию. Элемент управления Data обеспечивает движение по

записям (последовательное Движение к последующей записи или к предыдущей

записи при щелчке мышью по правой или левой стрелке объекта и переход “

первой или последней записи при щелчке мыши по левой или правой кнопке

окна) (рис. 5.3).

Аналогичные действия можно проделать без использования мыши, а программно.

Для этого применяются методы объекта Data.

[pic]

phl 5 2

[pic]

Такгцуж методам являются:

. Refresh — открытие и закрытие базы данных;

. MoveFirst — текущей становится первая запись из множества записей:

. MoveNext — текущей становится следующая запись из множества записей;

Рис 53

. Move Previous — текущей становится предыдущая запись из множества

записей;

. MoveLast — текущей становится последняя запись из множества записей;

. Update — редактированное поле записывается в базу данных ( этот можно

применять только для таблиц и динамических множеств);

. FindFirst найти первую запись для заданного условия поиска;

. FindNext найти следующую запись для заданного усло-„ия поиска:

. FindLast найти последнюю запись для заданного условия

поиска;

. FindPrevious найти предыдущую запись для заданного условия поиска.

Последние четыре метода требуют задания критерия поиска записи. В общем

случае критерием является строка символов, которая может включать

логические выражения. Переменной типа строки символов, являющейся

критерием, присваивается значение Следующие примеры показывают задание

критериев:

Dim Criteriy As String

Criterly = “State = ' NY ' “ ' значение поля State (Штат) таблицы должно

быть равно NY Criteriy = “Title > ‘A’ And Title < 'В' “ ' первой буквой

поля Title таблицы должна быть буква А Criteriy = “Name =” & “'” & Poisk &

“'” ' значение поля Name таблицы должно быть равно значению переменной

Poisk

Следует обратить внимание на то, что задаваемое значение в условиях берется

в апострофы “ символ — '”. В последнем примере эти апострофы специально

задаются.

При использовании методов для поиска записей используется также свойство

NoMath, применяемое для таких объектов, как таблица, динамическое

множество, кадр или Recordset. Синтаксис использования свойства следующий:

Объект. NoMath

Свойство принимает значение True (требуемая запись не найдена) или False

(требуемая запись найдена). Если поиск оказался безрезультатным, то

свойство имеет значение True и положение текущей записи (в момент

применения одного из указанных выше методов поиска) не меняется.

Как было сказано выше, ссылаться на свойства объекта Recordset,

создаваемого элементом управления Data, можно только используя свойство

Recordset самого элемента Data (синтаксис см. выше). Таким образом, при

использовании перечисленных методов вставляется свойство Recoidset элемента

Data. Например,

Datal.Recordset.MoveLast Datal.Recordset.MoveNext Datal.Recordset.FindFirst

FindCriterly

Пример программы.

Модифицируем приведенную выше форму, добавив командные кнопки и текстовую

строку (рис 5 4) Свойству Visible для элемента управления Data присвоим

значение False (т е на этапе выполнения окно Data не видимо и его нельзя

использовать для диалогового доступа к базе данных) Функции движения по

записям базы данных, действии с записями, поиска программируются

процедурами обработки событии соответствующих командных кнопок Критерии

поиска требуемой записи вводится в текстовом окне, которое активизируется

командной кнопкой “Поиск” (отрицательный результат поиска также выводится в

этом текстовом окне). В процедурах используются выше рассмотренные свойства

и методы

[pic]

Процедуры обработки событий-

Option Explicit Dim Pri, Pr2 As Boolean

Private Sub Commandl Click()

If Not Datal.Recordset.EOF Then Pr2 = True

Commandl.Enabled = True Datal.Recordset.MoveNext

If Not Pri Then Pri = True: Command2.Enabled = True Else Pr2 = False

Datal.Recordset.Move Previous Commandl.Enabled = False End If End Sub

Private Sub Command2_Ciick() If Not Datal.Recordset.BOF Then Pri - True

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.