Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab_3.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
181.25 Кб
Скачать

Лабораторная работа

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

Создание приложения для просмотра базы данных.

Цель работы

  1. Приобретение навыков создания и программирования баз данных.

  2. Изучение свойств элемента Data.

  3. Приобретение навыков работы с элементом Data.

Задание для самостоятельной работы

В соответствии с методическими указаниями, по материалам рекомендованной литературы и конспекта лекций написать программу для решения задачи.

Содержание отчета

  1. Текст кода на языке Visual Basic.

  2. Подробное описание последовательности действий при написании программы.

  3. Результаты расчета.

  4. Описание свойств элемента Data

Методические указания

Объект Data, как и любой другой элемент управления в Visual Basic, имеет несколько стандартных, общих для многих элементов управления, свойств, методов и событий. Наряду с ними, он имеет целый ряд свойств, методов и событий, предназначенных для работы с данными.

Свойства

BOFAction

Свойство BOFAction определяет действие объекта Data, если свойство BOF (beginning of file - начало файла) у созданного им набора записей установлено в True.

Синтаксис: data1.BOFaction=value.

Значение value может быть выбрано из двух альтернатив: MoveFirst или BOF.

При создании объекта Data свойство BOFAction устанавливается по умолчанию как MoveFirst. При этом текущей становится первая запись в наборе записей.

Установка свойства BOFAction в BOF приводит к тому, что при перемещении указателя текущей записи за пределы набора сверху, текущая запись становится недопустимой (invalid) и любая попытка ее редактирования приведет к ошибке. В этом случае происходит событие Validate на первой записи в наборе и, затем, событие Reposition, уже на недопустимой записи. При этом кнопка перемещения указателя к предыдущей записи на объекте управления данными становится неактивной.

Установить свойство BOFAction объекта управления данными data1 в режиме выполнения приложения можно следующим образом:

data1.BOFaction= vbBOFActionMoveFirst,

или

data1.BOFaction= vbBOFActionBOF.

Connect

Свойство Connect определяет тип базы данных, открываемой объектом Data. По умолчанию открывается база данных в формате Microsoft Access.

Синтаксис: data1.сonnect=string.

Установка свойства Connect в режиме выполнения приложения производится следующим образом:

data1.connect= " dBASE IV;"

или

data1.connect= " FoxPro 3.0;".

Database

Использование свойства Database в режиме выполнения приложения позволяет получить ссылку на объект Database, который создан объектом Data.

Синтаксис: Set databaseobject = data1.Database.

Объект Data создает объект Database на основе своих свойств DatabaseName, Exclusive, ReadOnly, и Connect. Так как объект Database имеет свои собственные свойства и методы то, получив на него ссылку, вы можете использовать их в приложении. Например, вы можете использовать методы Close или Execute

DatabaseName

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

Синтаксис: data1.DatabaseName=string.

Строковое выражение string определяет месторасположение и имя файла базы данных в форматах MS Access и Btrieve. Если используется база данных, размещенная на файл-сервере, то строка должна включать полный путь к требуемому файлу, например:

\\SERVER\DATA\DATABASE.MDB.

Для баз данных в формате dBASE, Paradox и др. строка string должна содержать только путь к файлу.

Для баз данных ODBC это свойство не определяется, так как все необходимые параметры для связи с базой данных устанавливаются свойством Connect.

Если вы во время работы приложения изменяете свойство DatabaseName, то после сделанных изменений необходимо выполнить метод Refresh объекта Data.

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

Другим способом определения пути к файлу базы данных является использование глобального объекта Visual Basic - объекта App. Хотя этот объект не имеет ни методов, ни событий, у него есть несколько очень полезных свойств. Одним из них является свойство Path, которое определяет путь к выполняемому файлу. Если вы используете интегрированную среду разработки Visual Basic, например, для отладки приложения, то App.Path определяет путь к файлу проекта, который вы запустили.

Пусть файлы баз данных для вашей программы находятся в подкаталоге DBASE каталога, в котором находится ваше приложение (проект). Тогда вы можете определить необходимый путь к файлу с помощью следующего фрагмента кода. Причем каталог, из которого запускается приложение (проект) может называться как угодно.

Dim DBName As String

DBName = "BIBLIO.MDB"

Data1.Databasename = App.Path+"\DBASE\"+DBName

Data1.Refresh

EOFAction

Свойство EOFAction определяет действие объекта Data, если свойство EOF (end of file - конец файла) у созданного им набора записей установлено в True.

Синтаксис: data1.EOFAction=value.

Значение value может быть выбрано из трех альтернатив: MoveLast, EOF, или AddNew.

При создании объекта Data свойство EOFAction устанавливается по умолчанию как MoveLast. При этом текущей остается последняя запись в наборе записей.

Установка свойства EOFAction в EOF приводит к тому, что при перемещении указателя текущей записи за пределы набора снизу, текущая запись становится недопустимой (invalid) и любая попытка ее редактирования приведет к ошибке. В этом случае происходит событие Validate на последней записи в наборе и, затем, событие Reposition, уже на недопустимой записи. При этом кнопка перемещения указателя на следующую запись на объекте управления данными становится неактивной.

Установить свойство EOFAction объекта управления данными data1 в режиме выполнения приложения можно следующим образом:

data1.EOFaction=vbEOFActionMoveLast,

data1.EOFaction=vbEOFActionEOF,

data1.EOFaction=vbEOFActionAddNew.

Exclusive

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

Синтаксис: data1.Exclusive=value.

Значение value имеет тип boolean и может принимать значения True или False. Если свойство Exclusive установлено в True, то база данных открывается в однопользовательском режиме. Если оно установлено в False, то с базой данных могут одновременно работать несколько пользователей. По умолчанию свойство Exclusive устанавливается в False для поддержки многопользовательского режима работы.

Свойство Exclusive используется объектом Data только во время открытия базы данных, поэтому, если переустановить его во время выполнения приложения, то необходимо применить также и Refresh метод:

Data1.Exclusive=true

Data1.Refresh.

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

Options

Свойство Options позволяет установить или получить один или несколько параметров набора записей созданного объектом Data. Это свойство обычно используется при разработке многопользовательских приложений.

Синтаксис: data1.Options=value.

Ниже приведено краткое описание возможных установок свойства Options:

dbDenyWrite - в многопользовательской среде другие пользователи не могут вносить изменения в записи;

dbDenyRead - в многопользовательской среде другие пользователи не имеют возможности читать записи. Эта установка применяется только для наборов записей типа таблица;

dbReadOnly - набор записей открывается только для чтения. В этом случае вы не можете изменять записи;

dbAppendOnly - в этом случае вы имеете возможность добавлять новые записи в набор записей, но не можете редактировать существующие записи;

dbInconsistent - обновление может применяться для всех полей в наборе записей, даже если они нарушают условие объединения;

dbConsistent - обновление применяется только для тех полей в наборе записей, которые не нарушают условие объединения. Это значение свойства Options устанавливается по умолчанию;

dbSQLPassThrough - эта константа означает, что SQL-запрос, определенный свойством RecordSource объекта управления данными, будет выполняться на сервере MS SQL Server или Oracle (если вы, конечно, используете такие ODBC-базы данных);

dbForwardOnly - эта установка определяет набор записей таким образом, что по нему возможно перемещение только вперед (только метод MoveNext может использоваться для перемещения по набору записей);

dbSeeChanges - установка этого значения вызывает появление ошибки, когда какой либо пользователь изменил данные в то время, когда вы их редактируете.

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

Data1.DatabaseName="C:\VB5\BIBLIO.MDB"

Data1.Options=dbDenyWrite + dbReadOnly

Data1.Refresh.

ReadOnly

Свойство ReadOnly определяет метод доступа к базе данных, открытой с помощью объекта Data: только для чтения или для чтения-записи.

Синтаксис: data1.ReadOnly=Boolean.

Если свойство ReadOnly установлено в True, то открытая база данных доступна только для чтения и вы, следовательно, не имеете возможности редактировать данные. Если же свойство установлено в False, то база данных открыта для чтения-записи и вы можете делать с данными все, что угодно. По умолчанию свойство ReadOnly устанавливается в False.

После изменения свойства ReadOnly во время выполнения приложения необходимо применить метод Refresh. Следующий пример показывает, как открыть базу данных только для чтения:

Data1.DatabaseName="С:\VB5\BIBLIO.MDB"

Data1.ReadOnly=True

Data1.Refresh

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

Recordset

Свойство Recordset определяет набор записей, создаваемый объектом Data.

Синтаксис: data1.Recordset=string.

Параметр string представляет собой текстовую строку, которая определяет набор записей.

RecordSource

Свойство RecordSource определяет источник данных для набора записей, создаваемого объектом Data.

Синтаксис: data1 RecordSource=string.

Параметр string представляет собой строку, определяющую источник данных. Возможные значения этого параметра представлены в следующей таблице:

Установка

Описание

Имя таблицы

Имя одной из таблиц, содержащихся в базе данных.

SQL-запрос

Текстовая строка, представляющая собой SQL-запрос к базе данных. Причем синтаксис SQL выражения должен соответствовать типу базы данных.

Объект QueryDef

Имя одного из объектов QueryDef из набора QueryDefs объекта Database. Этот источник данных поддерживается только для баз данных MS Access.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]