Разработка INTRANET приложений

         

Доступ к базе данных на стороне сервера


Механизм доступа к БД на стороне сервера реализуется за счет наличия стандартизованных средств:

  • поддержки диалоговых форм на уровне гипертекстового документа (язык HTML);
  • возможности запуска серверных программ, взаимодействие которых происходит через стандартный интерфейс CGI или прикладные интерфейсы Web-сервера.

При реализации на основе CGI общая схема реализации доступа к базе данных на стороне Web-сервера выглядит следующим образом:

  • при просмотре документа пользователь встречает ссылку на страницу, содержащую одну или несколько форм, предназначенных для запроса данных из базы данных;
  • пользователь запрашивает эту страницу, помимо незаполненных форм страница может содержать общую информацию о базе данных и о назначении предлагаемых форм;
  • если пользователя интересует информация из БД, которую можно получить на основе предложенных форм, то он заполняет одну из форм и отправляет заполненную форму на сервер;
  • получив заполненную форму, сервер запускает соответствующую внешнюю программу, передавая ей параметры и получая результаты на основе протокола CGI;
  • внешняя программа преобразует запрос, выраженный с помощью заполненной формы, в запрос на языке, понятном серверу баз данных (обычно это язык SQL).

При использовании CGI вся интерпретация пользовательского запроса производится серверной программой. Она может быть предельно жесткой, ориентированной на выполнение запроса к фиксированной таблице фиксированной базы данных, или относительно гибкой, способной выполнить произвольный запрос к одной или нескольким таблицам базы данных, идентифицируемой в параметрах клиента.

API - это, фактически, дешевый, но небезопасный способ выполнить в адресном пространстве сервера WWW программу, которая соответствует спецификациям на языке HTML. Такая программа должна быть заранее подготовлена и включена в библиотеку, из которой сервер может производить динамическую загрузку (DLL-модули в Windows или разделяемая библиотека sharedlibrary в Unix).



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