Access. Программирование на VBA

Безопасное изменение установок Jet


Существует три способа, позволяющие изменить установки Jet в системном реестре:

• Непосредственное изменение установок, принятых по умолчанию, с помощью RegEdit.exe,

• Создание пользовательского профиля для отмены установок, принятых по умолчанию, и вызов данного профиля с помощью опции командной строки /profile,

• Временная отмена в приложении установок, принятых по умолчанию, с помощью метода SetOption объекта базы данных.

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

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

DBEngine.SetOption ConstantNameofSetting, value

Например, производительность пакета обновлений можно повысить, если заставить Jet ожидать несколь­ко дольше перед выполнением неявных транзакций. Соответствующий код для временного увеличения пе­риода ожидания SharedAsync Delay до 1 секунды (1000 миллисекунд) должен быть таким:

DBEngine.SetOptiuon dbSharedAsyncDelay, 1000

Данная установка остается в силе, пока приложение не изменит ее с помощью другого метода — SetOption — либо пока DBEngine не выйдет из области действия, либо пока приложение не прекратит работу. Метод

SetOption не записывает значения в системный реестр. С помощью метода SetOption нельзя отменить установки, принятые по умолчанию для SystemDB, CompactByPkey или подпроцессов.



Содержание раздела