Интернет-журнал "Домашняя лаборатория", 2007 №4
Шрифт:
Рис. 4.2. Новая запись в базе данных.
• Exclusive
Свойство Exclusive определяет режим работы открываемой базы данных: однопользовательский или многопользовательский.
Синтаксис: data1.Exclusive=value.
Значение value имеет тип boolean и может принимать
Свойство Exclusive используется объектом Data только во время открытия базы данных, поэтому, если переустановить его во время выполнения приложения, то необходимо применить также и Refresh метод:
Data1.Exclusive=true
Data1.Refresh.
Операции с базой данных, открытой в однопользовательском режиме, выполняются несколько быстрее, чем с базой данных, доступной для многих пользователей.
Для баз данных ODBC это свойство игнорируется.
Откройте проект, созданный для демонстрации свойства EOFAction, установите свойство Exclusive объекта управления данными в True и запустите его. Таким образом, вы открыли базу данных BIBLIO2.MDB в однопользовательском режиме. Затем запустите систему управления базами данных MS Acces и попытайтесь открыть файл BIBLIO2.MDB. Результатом ваших действий будет выданное на экран сообщение, уведомляющее вас, что базу данных открыть невозможно.
• Options
Свойство Options позволяет установить или получить один или несколько параметров набора записей созданного объектом Data. Это свойство обычно используется при разработке многопользовательских приложений.
Синтаксис: data1.Options=value.
Возможные значения параметра value приведены в следующей таблице:
Постоянная • Значение
dbDenyWrite • 1
dbDenyRead • 2
dbReadOnly • 4
dbAppendOnly • 8
dbInconsistent • 16
dbConsistent • 32
dbSQLPassThrough • 64
dbForwardOnly • 256
dbSeeChanges • 512
Ниже приведено краткое описание возможных установок свойства Options:
dbDeny Write — в многопользовательской среде другие пользователи не могут вносить изменения в записи;
dbDenyRead — в многопользовательской среде другие пользователи не имеют возможности читать записи. Эта установка применяется только для наборов записей типа таблица;
dbReadOnly — набор записей открывается только для чтения. В этом случае вы не можете изменять записи;
dbAppendOnly — в этом случае вы имеете возможность добавлять новые записи в набор записей, но не можете редактировать существующие записи;
dblnconsistent — обновление может применяться для всех полей в наборе записей, даже если они нарушают условие объединения;
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.
Для того, чтобы сравнить параметры набора записей с каким либо определенным значением вы можете использовать оператор And. С использованием следующего фрагмента кода вы, например, можете проверить, открыт ли набор записей только для чтения:
If Data1.Options And dbReadOnly Then…
• ReadOnly
Свойство ReadOnly определяет метод доступа к базе данных, открытой с помощью объекта Data: только для чтения или для чтения-записи.
Синтаксис: data1.ReadOnly=Boolean.
Если свойство ReadOnly установлено в True, то открытая база данных доступна только для чтения и вы, следовательно, не имеете возможности редактировать данные. Если же свойство установлено в False, то база данных открыта для чтения-записи и вы можете делать с данными все, что угодно. По умолчанию свойство ReadOnly устанавливается в False.
После изменения свойства ReadOnly во время выполнения приложения необходимо применить метод Refresh. Следующий пример показывает, как открыть базу данных только для чтения:
Data1.DatabaseName="C: \VB5\BIBLIO.MDB"
Data1.ReadOnly=T rue
Data1.Refresh
Если нет необходимости редактировать данные, то предпочтительно открывать базу данных в режиме только для чтения, так как операции с данными в этом случае выполняются несколько быстрее.
• Recordset
Свойство Recordset определяет набор записей, создаваемый объектом Data.
Синтаксис: data1.Recordset=string.
Параметр string представляет собой текстовую строку, которая определяет набор записей.
После загрузки приложения автоматически создается объект Data. Если у него корректно установлены свойства Connect, DatabaseName, Options, RecordSource, Exclusive, ReadOnly и RecordsetType, то ядро системы управления базами данных Jet database engine создаст новый объект Recordset. То же самое произойдет, если во время выполнения приложения будет применен метод Refresh объекта Data. Доступ к этому объекту — набору записей можно получить через свойство Recordset объекта Data.