9
происходит там же, где хранятся данные (на сервере), нет необходимости в
пересылке больших пакетов данных. Кроме того, SQL-сервер, если это
возможно, оптимизирует полученный запрос таким образом, чтобы он был
выполнен в минимальное время с наименьшими накладными расходами. Все
это повышает быстродействие системы и снижает время ожидания результата
запроса.
При выполнении запросов сервером существенно повышается степень
безопасности данных, поскольку правила целостности данных определяются в
БД на сервере и являются едиными для всех приложений, использующих эту
БД. Таким образом, исключается возможность определения противоречивых
правил поддержания целостности. Мощный аппарат транзакций,
поддерживаемый SQL-серверами, позволяет исключить одновременное
изменение одних и тех же данных различными пользователями и предоставляет
возможность откатов к первоначальным значениям при внесении в БД
изменений, закончившихся аварийно[23].
Таким образом, функциями приложения-клиента являются:
1. Посылка к серверу запросов;
2. Интерпретация результатов запросов, полученных от сервера, и
представление их пользователю в требуемой форме;
3. Реализация интерфейса пользователя.
Функциями сервера БД являются:
1. Прием запросов от приложений-клиентов, интерпретация запросов,
выполнение запросов в БД, отправка результата выполнения запроса
приложению-клиенту;
2. Управление целостностью БД, обеспечение системы безопасности,
блокировка неверных действий приложений-клиентов;
3. Хранение бизнес-правил, часто используемых запросов в уже
интерпретированном виде;
4. Обеспечение одновременной, безопасной и отказоустойчивой
многопользовательской работы с одними и теми же данными.