Firebird. Руководство разработчика баз данных | страница 34




! ! !

ВНИМАНИЕ! Помните, что для этих платформ все имена файлов являются чувствительными к регистру.

. ! .


* для соединения с сервером Windows:

имя-сервера:Диск: \путь-файловой-системы\файл-базы-данных

Пример:

hotchicken:С:\Program Files\Firebirdl5\examples\LeisureStore.fdb

Прямая наклонная черта также допустима в Windows:

hotchicken:С:/Program Files/Firebirdl5/examples/LeisureStore.fdb


Локальное соединение в Windows

Соединение встроенного клиента или локального внешнего клиента в локальном режиме Windows:

C:\Program Files\Firebirdl5\examples\LeisureStore.fdb


Сеть Windows (Named Pipes/WNet)

Соединение удаленного клиента сервера Windows с использованием протокола Named Pipes:

\\имя-сервера\Диск:\путь\файл-базы-данных

где \\имя-сервера - правильный идентификатор имени узла серверной машины в сети Windows, не может быть разделяемым или назначенным диском. Например,

\\hotchicken\c:\databases\LeisureStore.fdb


Несовместимые строки соединения для подключений Windows

Суперсервер для Windows устанавливает исключающую блокировку на файл базы данных, когда активируется первое клиентское подключение, чтобы защитить базы данных от старой ошибки.


Ошибка в пути соединения

Windows воспринимает две формы абсолютного локального пути к файлу - один (правильный в соответствии со стандартом DOS), имеющий вид устройство:\путь- к-базе-данных, и другой: Устройство: путь-к-базе-данных (отсутствует обратная наклонная черта после обозначения дискового устройства).

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

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


! ! !

СОВЕТ. Настоятельно рекомендуется использовать алиасы базы данных (см. разд. "Алиасы базы данных" е главе 4) для всех соединений. Убедитесь также, что файл aliases.conf содержит один и только один алиас для каждой базы данных.