Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Локальный общий доступ

Delphi , Базы данных , BDE

Локальный общий доступ

Автор: Eryk Bottomley

...я так понимаю, что LocalShare относится к ситуации, когда другие не-IDAPI приложения могут одновременно иметь доступ к одним и тем же файлам...

Примерно на такие мысли наталкивает поставляемая документация... к сожалению это не так.

LOCALSHARE=False говорит BDE о том, что он должен сам решать при необходимости вопрос о блокировке таблицы/записи в типичных ситуациях, например, когда BDE 'думает' что таблица находится на локальном диске он выключает блокировку для увеличения скорости доступа. К сожалению, логические диски общего пользования в сетях 'p-t-p' программно идентифицируются как локальные с предсказуемо липовыми результатами. Установка LOCALSHARE=True заставляет блокирующий механизм 'включаться' для всех дисков и, следовательно, решает эту проблему.

Документ обсуждает использование параметра LOCALSHARE в настройках BDE (Borland Database Engine).

Автор, Эрик Боттомли, изначально неправильно понял цель параметра LOCALSHARE. Он думал, что он позволяет нескольким не-IDAPI приложениям одновременно доступаться к тем же файлам. Однако это не так.

На самом деле, LOCALSHARE=False указывает BDE решать, нужно ли блокировать таблицу или запись самостоятельно, обычно когда BDE считает, что таблица находится на локальном диске, что позволяет обеспечить быстрый доступ. К сожалению, логические диски, поделены в сети (p-t-p), программно идентифицируются как локальные диски с предсказуемыми и неправильными результатами.

Установка LOCALSHARE=True заставляет механизм блокировки всегда быть включенным для всех дисков, решая это問題. Эта настройка обеспечивает, что BDE обрабатывает все диски одинаково, включая те, которые поделены в сети, что является важным для сохранения целостности данных и предотвращения конфликтов между приложениями, доступными к тем же файлам одновременно.

Вот пример кода:

[MyApp]
LOCALSHARE=True

Это устанавливает LOCALSHARE в значение True, обеспечивая, что BDE всегда блокирует таблицы и записи правильно, даже на поделенных дисках в сети.

LOCALSHARE=False в BDE указывает на то, что он самостоятельно решает вопрос о блокировке таблицы/записи, а установка LOCALSHARE=True заставляет включать блокирующий механизм для всех дисков, решая проблему с логическими дисками общего пользования в сетях.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




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


:: Главная :: BDE ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-21 11:50:34/0.0036890506744385/1