Разработка приложений архитектуры клиент-сервер при помощи SQL - Программирование, компьютеры и кибернетика курсовая работа

Главная
Программирование, компьютеры и кибернетика
Разработка приложений архитектуры клиент-сервер при помощи SQL
Анализ архитектуры информационной системы, в структуру которой входят системы файл-сервер и клиент-сервер. Сравнение языков запросов SQL и QBE. Принципы разработки приложений архитектуры клиент-сервер при помощи структурированного языка запросов SQL.
посмотреть текст работы
скачать работу можно здесь
полная информация о работе
весь список подобных работ
Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
1. АРХИТЕКТУРА ИНФОРМАЦИОННОЙ СИСТЕМЫ
2. РАЗРАБОТКА ПРИЛОЖЕНИЙ АРХИТЕКТУРЫ КЛИЕНТ-СЕРВЕР ПРИ ПОМОЩИ SQL
Организация взаимодействия клиент-сервер при помощи SQL
Среды программирования на языке SQL
На протяжении последних десяти лет специалисты по вычислительной технике работают над усовершенствованием приложений клиент-сервер. В результате были построены приложения, поддерживающие совместную работу множества пользователей с единственным источником данных в сети.
Архитектура клиент-сервер стала общераспространенной при общении с компьютером или с системой на его основе. Любой человек, подключающийся к диалоговой информационной системе с помощью телефонной связи, использует архитектуру клиент-сервер. Пользуясь автоматическим кассовым аппаратом, считывая штриховые коды своих покупок на проверочном устройстве магазина или расплачиваясь за них с помощью кредитной карточки, идет взаимодействие с компьютерной системой клиент-сервер.
Целью курсовой работы является рассмотрение структурированного языка запросов SQL, при помощи которого разрабатываются базы данных для системы клиент-сервер.
Задачами курсовой работы является рассмотрение:
архитектуры информационной системы, и в частности клиент-сервер;
языков запросов SQL и QBE, и их сравнение;
принципов разработки приложений архитектуры клиент-сервер при помощи SQL.
Система клиент-сервер является наиболее перспективной, так как поддерживает большое число пользователей и сложные приложения, кроме этого она обладает высоким уровнем защиты информации, за счет среды программирования SQL Server и все данные и прикладные средства хранятся централизованно, то есть, сосредоточены в одном месте.
1. АРХИТЕКТУРА ИНФОРМАЦИОННОЙ СИСТЕМЫ
Эффективность функционирования информационной системы во многом зависит от ее архитектуры. В настоящее время перспективной является архитектура клиент-сервер. В достаточно распространенном варианте она предполагает наличие компьютерной сети и распределенной базы данных, включающей корпоративную базу данных (КБД) и персональные базы данных (ПБД). КБД размещается на компьютере-сервере, ПБД размещаются на компьютерах сотрудников подразделений, являющихся клиентами корпоративной базы данных.
Самой простой архитектурой для реализации является архитектура "файл-сервер" (рисунок 1), но она же обладает и самым большим количеством недостатков, ограничивающих спектр решаемых ею задач. Простейшим случаем является случай, когда данные располагаются физически на том же компьютере, что и само приложение.
Рисунок 1 Структура информационной системы с файл-сервером
К существенным неудобствам, возникающим при работе с системой, построенной по такой архитектуре, можно отнести следующее:
- трудности при обеспечении непротиворечивости и целостности данных;
- существенная загрузка локальной сети передаваемыми данными;
- в целом, невысокая скорость обработки и представления информации;
- высокие требования к ресурсам компьютеров. При этом возникают следующие ограничения.
- невозможность организации равноправного одновременного доступа; пользователей к одному и тому же участку базы данных;
- количество одновременно работающих с системой пользователей не превышает пяти человек для ЛВС, построенной в соответствии со спецификацией 1 OBaseT (скорость обмена данными до 10Мб/с);
При всем этом система обладает одним очень важным преимуществом - низкой стоимостью.
Архитектура "файл-сервер" предусматривает концентрацию обработки на рабочих станциях. Основным преимуществом этого варианта является простота и относительная дешевизна. Подобное решение приемлемо, пока число пользователей, одновременно работающих с базой данных, не превышает 5-10 человек. При увеличении количества пользователей система может "захлебнуться" из-за перегруженности ЛВС большими потоками необработанной информации.
Сервер, как правило, -- самый мощный и самый надежный компьютер. Он обязательно подключается через источник бесперебойного питания, в нем предусматриваются системы двойного или даже тройного дублирования. В особо ответственных случаях можно подключить вместе несколько серверов так, что при выходе из строя одного из них в работу автоматически включится "дублер". Таким образом, при концентрации обработки данных на сервере надежность системы в целом ограничивается только материальными средствами, которые заказчики готовы вложить в техническое оснащение.
Решение по автоматизации учета и управления в корпоративных структурах предполагает распределенную обработку данных, организацию параллельных вычислений, глубокое разграничение уровней доступа, возможность выбора различных операционных систем и серверных платформ. Если бизнес не велик, подобное решение оптимально.
В ходе эксплуатации были выявлены общие недостатки файл-серверного подхода при обеспечении многопользовательского доступа к базе данных.
Вся тяжесть вычислительной нагрузки при доступе к базе данных ложится на приложение клиента, что является следствием принципа обработки информации в системах "файл-сервер": при выдаче запроса на выборку информации из таблицы вся таблица базы данных копируется на клиентское место, и выборка осуществляется на клиентском месте. Локальные СУБД используют так называемый "навигационный подход", ориентированный на работу с отдельными записями.
Не оптимально расходуются ресурсы клиентского компьютера и сети; например, если в результате запроса мы должны получить 2 записи из таблицы объемом 10000 записей, все 10000 записей будут скопированы с файл-сервера на клиентский компьютер; в результате возрастает сетевой трафик и увеличиваются требования к аппаратным мощностям пользовательского компьютера.
В базе данных на файл-сервере гораздо проще вносить изменения в отдельные таблицы, минуя приложения. Эта возможность облегчается тем обстоятельством, что у локальных СУБД база данных -- понятие более логическое, чем физическое, поскольку под базой данных понимается набор отдельных таблиц, сосуществующих в едином каталоге на диске. Все это позволяет говорить о низком уровне безопасности - как с точки зрения хищения и нанесения вреда, так и с точки зрения внесения ошибочных изменений.
Недостаточно развитый аппарат транзакций для локальных СУБД служит потенциальным источником ошибок как с точки зрения одновременного внесения изменений в одну и ту же запись, так и с точки зрения отката результатов серий объединенных по смыслу в единое целое операций над базой, когда некоторые из них завершились неуспешно, а некоторые - нет; это может нарушать ссылочную и смысловую целостность базы данных.
Недостатки настольных СУБД обычно проявляются не сразу, а лишь в процессе длительной эксплуатации, когда объем хранимых данных и число пользователей становятся достаточно велики - это приводит к снижению производительности приложений, использующих такие СУБД.
Поскольку настольные СУБД не содержат специальных приложений и сервисов, управляющих данными, а используются для этой цели файловые сервисы операционной системы, вся реальная обработка данных в таких СУБД осуществляется в клиентском приложении, и любые библиотеки доступа к данным в этом случае также находятся в адресном пространстве клиентского приложения. Поэтому при выполнении запросов данные, на основании которых выполняется такой запрос, должны быть доставлены в то же самое адресное пространство клиентского приложения. Это и приводит к перегрузке сети при увеличении числа пользователей и объема данных, а также грозит иными неприятными последствиями, например разрушением индексов и таблиц. Недаром до сих пор популярны утилиты для "ремонта" испорченных файлов настольных СУБД.
Недостатки архитектуры "файл-сервер" решаются при переводе приложений в архитектуру "клиент-сервер", которая знаменует собой следующий этап в развитии СУБД. Характерной особенностью архитектуры "клиент-сервер" является перенос вычислительной нагрузки на сервер базы данных (SQL-сервер) и максимальная разгрузка приложения клиента от вычислительной работы, а также существенное укрепление безопасности данных - как от злонамеренных, так и просто ошибочных изменений.
БД в этом случае помещается на сетевом сервере, как и в архитектуре "файл-сервер", однако прямого доступа к базе данных (БД) из приложений не происходит. Функция прямого обращения к БД осуществляет специальная управляющая программа - сервер БД (SQL-сервер), поставляемый разработчиком СУБД.
Сервером определенного ресурса в компьютерной сети называется компьютер (программа), управляющая этим ресурсом, клиентом - компьютер (программа), использующий этот ресурс. В качестве ресурса компьютерной сети могут выступать, базы данных, файловые системы, службы печати, почтовые службы. Тип сервера определяется видом ресурса, которым он управляет. Например, если управляемым ресурсом является база данных, то соответствующий сервер называется сервером базы данных.
Структура распределенной ИС, построенной по архитектуре клиент-сервер с использованием сервера баз данных, рассматривается на рисунке 2. При такой архитектуре сервер базы данных обеспечивает выполнение основного объема обработки данных. Формируемые пользователем или приложением запросы поступают к серверу базы данных в виде инструкции языка SQL. Сервер базы данных выполняет поиск и извлечение нужных данных, которые затем передаются на компьютер пользователя. Достоинством такого подхода в сравнении с файл-сервером является заметно меньший объем передаваемых данных.
Для создания и управления персональными базами данных и приложений, работающих с ними, используются СУБД, такие как Access и Visual FoxPro фирмы Microsoft, Paradox фирмы Borland.
Корпоративная база данных создается, поддерживается и функционирует под управлением сервера баз данных, например Microsoft SQL Server. В зависимости от размеров организации и особенностей решаемых задач ИС может иметь одну из следующих конфигураций: компьютер-сервер, содержащий корпоративную и персональную базы; компьютер-сервер и персональные компьютеры с ПБД; несколько компьютеров-серверов и персональных компьютеров с ПБД.
Использование архитектуры клиент-сервер дает возможность постепенного наращивания ИС предприятия, во-первых, по мере развития предприятия; во-вторых, по мере развития самой ИС.
Разделение общей базы данных на корпоративную и персональные позволяет уменьшить сложность проектирования баз данных по сравнению с централизованным вариантом, а значит снизить вероятность ошибок при проектировании и стоимость проектирования.
Важнейшим достоинством применения базы данных в ИС является обеспечение независимости данных от прикладных программ, это дает возможность пользователям не заниматься проблемами представления данных на физическом уровне: размещение данных в памяти, методов доступа к ним.
Такая независимость достигается поддерживаемым СУБД многоуровневым представлением данных в базе данных на логическом (пользовательском) и физическом уровнях. Благодаря СУБД и наличию логического уровня представления данных обеспечивается отделение концептуальной (понятийной) модели базы данных от ее физического представления в памяти ЭВМ. Важнейшим параметром крупной информационной системы является быстродействие при значительном количестве пользователей, а также надежность, масштабируемость и безопасность. Всё это обеспечивает архитектура "клиент-сервер". Такая архитектура позволяет оптимально распределить работу между клиентскими и серверной частями системы: теперь приложение, работающее на рабочей станции, не читает записи базы данных "напрямую", а посылает запросы на сервер, где они принимаются и последовательно отрабатываются специальными программами. В результате на рабочую станцию поступают только обработанные данные, что радикально сокращает информационные потоки в ЛВС.
Рисунок 2. Структура информационной системы с клиент-сервером
Хранимые в базе данные можно обрабатывать вручную, последовательно просматривая и редактируя данные в таблицах, с помощью имеющихся в СУБД соответствующих средств. Для выполнения эффективности применяют запросы, позволяющие производить множественную обработку данных, то есть одновременно вводить, редактировать и удалять множество записей, а также выбирать данные из таблиц.
Запрос представляет собой специальным образом описанное требование, определяющие состав производимых над базой данных операций по выборке, удалению или модификации хранимых данных. Для подготовки запросов с помощью различных СУБД чаще всего используются два основных языка описания запросов: язык QBE (Query By Example) - язык запросов по образцу; язык SQL (Structured Query Language) -структурированный язык запросов.
В языке QBE (Query-by-Example - язык запросов по образцу) используется визуальный подход для организации доступа к информации в базе данных, основанный на применении шаблонов запросов. Применение QBE осуществляется путем задания образцов значений в шаблоне запроса, предусматривающем такой тип доступа к базе данных, который требуется в данный момент, например получение ответа на некоторый вопрос.
Язык QBE был разработан компанией IBM в 1970-х годах и предназначался для пользователей, заинтересованных в выборе информации из баз данных. Этот язык получил у пользователей столь широкое признание, что в настоящее время в той или иной мере он реализован практически во всех популярных СУБД, включая и Microsoft Access. Средства поддержки языка QBE в СУБД Microsoft Access весьма просты в эксплуатации и в то же время представляют пользователям достаточно широкий спектр возможностей работы с данными. Средства языка QBE могут использоваться для ввода запросов к информации, сохраняемой в одной или нескольких таблицах, а так же для определения набора полей, которые должны присутствовать в результирующей таблице. Отбор записей может, проводится по конкретному или общему критерию, и предусматривать выполнение необходимых вычислений на основе информации, сохраняемой в таблицах. Кроме того, средства языка QBE можно использовать для выполнения различных операций над таблицами, например, для вставки и удаления записей, модификации значений полей или создания новых полей и таблиц.
СУБД Microsoft Access при создании запроса с использованием средств QBE неявно формирует эквивалентный оператор языка SQL, предназначенный для выполнения указанных действий.
Чаще всего используется тип запросов, который принято называть запросами на выборку. Запросы на выборку позволяют просматривать, анализировать и вносить изменения в данные, сохраняемые в одной или нескольких таблицах. При выполнении запроса на выборку СУБД Microsoft Access помещает выбранные данные в динамический набор данных, который представляет собой обновляемый набор записей, зависящий от таблицы или запроса, рассматриваемый как отдельный объект. Исключением являются лишь запросы, использующие специфические возможности языка SQL, которые отсутствуют в языке QBE.
Язык SQL берет свое начало в одной из исследовательских лабораторий компании IBM. В начале 1970-х годов исследователи выполняли первые разработки реляционных систем СУБД (или РСУБД), и тогда они создали подъязык данных, предназначенный для работы в этих системах. Пробная версия этого подъязыка была названа SEQUEL(Structured English Query Language - структурированный английский язык запросов). Однако когда пришло время официально выпускать их язык запросов в качестве продукта, разработчики захотели сделать так, чтобы люди понимали, что выпущенный продукт отличается от пробной системы СУБД и превосходит ее. Поэтому они решили дать выпускаемому продукту имя, хотя и отличающееся от SEQUEL, но явно принадлежащее к этому же семейству. Так что они назвали его SQL, который стал стандартом для подъязыков данных. В результате, хотя почти все поставщики и использовали варианты одного языка SQL, платформенная совместимость была слабой.
Вскоре началось движение за создание общепризнанного стандарта SQL, которого мог бы придерживаться каждый. В 1986 году организация ANSI выпустила официальный стандарт под названием SQL-86.3TOT стандарт был обновлен той же организацией в 1989 году и получил название SQL-89, а затем в 1992 году, был назван SQL-92. Самой последней версией стандарта SQL является SQL 2003.
Структурированный язык запросов SQL - это гибкий язык, являющийся самым распространенным инструментом, используемым для связи с реляционной базой данных. Этот язык предназначен для выполнения операций над таблицами (создание, удаление, изменение структуры) и над данными таблиц (выборка, изменение, добавление и удаление), а также некоторых сопутствующих операций. SQL является непроцедурным языком и состоит из ограниченного числа команд, специально предназначенных для управления над данными. В связи с этим SQL автономно не используется, обычно он погружен в среду встроенного языка программирования СУБД (например, FoxPro, Access). Чтобы решить с его помощью задачу, сообщается SQL, то, что именно вам нужно, а СУБД сама решит, как лучше всего выполнить ваш запрос. Язык SQL не обладает функциями полноценного языка разработки, а ориентирован на доступ к данным, поэтому его включают в состав средств разработки программ. В этом случае его называют встроенным. В специализированных системах разработки приложений типа клиент-сервер среда программирования, кроме того, обычно дополнена коммуникационными средствами (установление и разъединение соединений с серверами баз данных, обнаружение и обработка возникающих в сети ошибок), средствами разработки пользовательских интерфейсов, средствами проектирования и отладки.
Различают два основных метода использования встроенного SQL: статический и динамический.
При статическом использовании языка в тексте программы имеются вызовы функций языка SQL, которые жестко включаются в выполняемый модуль после компиляции. Изменения в вызываемых функциях могут быть на уровне отдельных параметров вызовов с помощью переменных языка программирования.
При динамическом использовании языка предполагается динамическое построение вызовов SQL-функций и интерпретация этих вызовов, например, обращение к данным удаленной базы, в ходе выполнения программы. Динамический метод обычно применяется в случаях, когда в приложении заранее неизвестен вид SQL-вызова, и он стремится в диалоге с пользователем. Основным назначением языка SQL является подготовка и выполнение запросов.
По возможностям манипулирования данными при описании запросов указанные языки практически эквивалентны. Главное отличие между ними, заключается в способе формирования запросов: язык QBE предполагает ручное или визуальное формирование запроса, в то время как использование SQL означает программирование запроса.
2. РАЗРАБОТКА ПРИЛОЖЕНИЙ АРХИТЕКТУРЫ КЛИЕНТ-СЕРВЕР ПРИ ПОМОЩИ SQL
SQL - это язык манипулирования данными, который работает в одно- или многопользовательской системе. Особенно хорошо SQL работает в системе клиент-сервер. В такой системе пользователи работают на множестве клиентских машин, соединенных с серверным компьютером. В прикладной программе (DB LIB), работающей на клиентском компьютере, создаются команды SQL. Та часть системы СУБД, которая находится на клиентском компьютере, передает эти команды на сервер по каналу связи, соединяющему сервер с клиентом. А та часть СУБД, которая находится на сервере, интерпретирует и выполняет полученную команду SQL, а затем по каналу связи отправляет результаты назад к клиенту. В виде SQL можно закодировать сложные операции, а затем на сервере декодировать их и выполнить. Такого рода система позволяет эффективнее использовать пропускную способность канала связи.
Архитектура клиент-сервер, дополняя характеристики SQL, дает возможность в малых, средних и больших сетях получать хорошую производительность при умеренных расходах.
Система безопасности SQL условно делится на два уровня: сервера и базы данных. На уровне сервера определяется возможность доступа пользователей к серверу. На уровне базы данных для пользователей, получивших доступ к серверу, устанавливаются права доступа к объектам базы данных.
На сервере система защиты SQL может быть реализована в двух режимах: стандартном - комбинацией средств защиты и интегрированном -использованием только средств защиты.
В стандартном режиме защиты контроль и управление учетными записями, используемыми для доступа к серверу, осуществляет SQL. Кроме того, SQL самостоятельно выполняет проверку подлинности пользователя с помощью пароля (т.е. аутентификация), хранит данные о правах доступа, именах и паролях. Стандартный режим используется наиболее часто. Его рекомендуется применять в случаях, когда в сети не используются средства Windows NT/2k для аутентификации пользователей и при использовании подключения к серверу с помощью различных протоколов.
В интегрированном режиме защиты контроль над устанавливаемыми пользователями соединениями осуществляет операционная система Windows NT/2k. Достоинствами интегрированного режима защиты является то, что после регистрации пользователя в домене (т.е. ввода своего имени и пароля) он сразу получает соответствующие права доступа ко всем ресурсам домена Windows NT/2k, в том числе и к данным SQL, а также использование передачи по сети. Такой метод автоматического предоставления доступа называется установлением доверительного соединения. Считается, что режим является более защищенным по сравнению с предыдущим, так как аутентификация средствами Windows NT/2k является гораздо более защищенной, чем аутентификация SQL.
Все языки манипулирования данными (ЯМД), созданные до появления реляционных баз данных и разработанные для многих СУБД персональных компьютеров, были ориентированы на операции с данными, представленными в виде логических записей файлов. Это требовало от пользователей детального знания организации хранения данных и достаточных усилий для указания не только того, какие данные нужны, но и того, где они размещены и как шаг за шагом получить их.
SQL же (Structured Query Language - структурированный язык запросов) ориентирован на операции с данными, представленными в виде логически взаимосвязанных совокупностей таблиц. Особенность предложений этого языка состоит в том, что они ориентированы в большей степени на конечный результат обработки данных, чем на процедуру этой обработки. SQL сам определяет, где находятся данные, какие индексы и даже наиболее эффективные последовательности операций следует использовать для их получения: не надо указывать эти детали в запросе к базе данных.
Для иллюстрации различий между ЯМД рассматривается следующая ситуация. Пусть, например, вы собираетесь посмотреть кинофильм и хотите воспользоваться для поездки в кинотеатр услугами такси. Одному шоферу такси достаточно сказать название фильма - и он сам найдет вам кинотеатр, в котором показывают нужный фильм. (Подобным же образом, самостоятельно, отыскивает запрошенные данные SQL.)
Для другого шофера такси вам, возможно, потребуется самому узнать, где демонстрируется нужный фильм и назвать кинотеатр. Тогда водитель должен найти адрес этого кинотеатра. Может случиться и так, что вам придется самому узнать адрес кинотеатра и предложить водителю проехать к нему по таким-то и таким-то улицам. В самом худшем случае вам, может быть, даже придется по дороге давать указания: "Повернуть налево... проехать пять кварталов... повернуть направо...". (Аналогично больший или меньший уровень детализации запроса приходится создавать пользователю в разных СУБД, не имеющих языка SQL.)
Разработка, в основном, шла в отделениях фирмы IBM (языки ISBL, SQL, QBE) и университетах США (PIQUE, QUEL). Последний создавался для СУБД INGRES (Interactive Graphics and Retrieval System), которая была разработана в начале 70-х годов в Университете шт. Калифорния и сегодня входит в пятерку лучших профессиональных СУБД. Сегодня из всех этих языков полностью сохранились и развиваются QBE (Query-By-Example - запрос по образцу) и SQL, а из остальных взяты в расширение внутренних языков СУБД только наиболее интересные конструкции.
В начале 80-х годов SQL "победил" другие языки запросов и стал фактическим стандартом таких языков для профессиональных реляционных СУБД. В 1987 году он стал международным стандартом языка баз данных и начал внедряться во все распространенные СУБД персональных компьютеров. Почему же это произошло?
Непрерывный рост быстродействия, а также снижение энергопотребления, размеров и стоимости компьютеров привели к резкому расширению возможных рынков их сбыта, круга пользователей, разнообразия типов и цен. Естественно, что расширился спрос на разнообразное программное обеспечение.
Борясь за покупателя, фирмы, производящие программное обеспечение, стали выпускать на рынок все более и более интеллектуальные и, следовательно, объемные программные комплексы. Приобретая (желая приобрести) такие комплексы, многие организации и отдельные пользователи часто не могли разместить их на собственных ЭВМ, однако не хотели, и отказываться от нового сервиса. Для обмена информацией и ее обобществления были созданы сети ЭВМ, где обобществляемые программы и данные стали размещать на специальных обслуживающих устройствах - файловых серверах.
СУБД, работающие с файловыми серверами, позволяют множеству пользователей разных ЭВМ (иногда расположенных достаточно далеко друг от друга) получать доступ к одним и тем же базам данных. При этом упрощается разработка различных автоматизированных систем управления организациями, учебных комплексов, информационных и других систем, где множество сотрудников (учащихся) должны использовать общие данные и обмениваться создаваемыми в процессе работы (обучения). Однако при такой идеологии вся обработка запросов из программ или с терминалов пользовательских ЭВМ выполняется на этих же ЭВМ. Поэтому для реализации даже простого запроса ЭВМ часто должна считывать из файлового сервера и (или) записывать на сервер целые файлы, что ведет к конфликтным ситуациям и перегрузке сети.
Для исключения указанных и некоторых других недостатков была предложена технология "Клиент-Сервер", по которой запросы пользовательских ЭВМ (Клиент) обрабатываются на специальных серверах баз данных (Сервер), а на ЭВМ возвращаются лишь результаты обработки запроса. При этом, естественно, нужен единый язык общения с Сервером и в качестве такого языка выбран SQL. Поэтому все современные версии профессиональных реляционных СУБД (DB2, Oracle, Ingres, Informix, Sybase, Progress, Rdb) и даже нереляционных СУБД (например, Adabas) используют технологию "Клиент-Сервер" и язык SQL. К тому же приходят разработчики СУБД персональных ЭВМ, многие из которых уже сегодня снабжены языком SQL.
Бытует мнение: Поскольку большая часть запросов формулируется на SQL, практически безразлично, что это за СУБД - был бы SQL.
Реализация в SQL концепции операций, ориентированных на табличное представление данных, позволило создать компактный язык с небольшим (менее 30) набором предложений. SQL может использоваться как интерактивный (для выполнения запросов) и как встроенный (для построения прикладных программ).
Ориентированный на работу с таблицами SQL не имеет достаточных средств для создания сложных прикладных программ. Поэтому в разных СУБД он либо используется вместе с языками программирования высокого уровня (например, такими как Си или Паскаль), либо включен в состав команд специально разработанного языка СУБД (язык систем dBASE, R:BASE и т.п.).
2.3 Организация взаимодействия клиент-сервер при помощи SQL
При использовании технологии клиент-сервер приложение разделяется на две части. Клиентская часть обеспечивает удобный графический интерфейс и размещается на компьютере пользователя. Серверная часть осуществляет управление данными, разделение информации, администрирование и обеспечивает безопасность информации. Клиентское приложение формирует запросы к серверу базы данных, на котором выполняются соответствующие команды. Результаты выполнения запросов пересылаются клиенту.
При разработке распределенных информационных систем в организации взаимодействия клиентской и серверной части выделяются следующие важные в практическом смысле задачи:
Перенос персональной базы данных на сервер для последующего ее коллективного использования как корпоративной базы данных;
Организация запросов к корпоративной базе данных, размещенной на сервере, со стороны компьютера-клиента;
Разработка клиентского приложения для удаленного доступа к корпоративной базе данных со стороны компьютера- клиента.
Задача переноса персональной базы на сервер может возникать в ситуациях, когда требуется обеспечить коллективный доступ к базе данных, разработанной с помощью персональной СУБД (FoxPro, Access). Для решения этой задачи, в составе названных персональных СУБД имеются соответствующие средства, предназначенные для преобразования баз данных в формат SQL.
Подготовка запросов к базе данных на сервере (на языке SQL) со стороны клиентской части может выполняться с помощью специально предназначенной утилиты. Для предоставления пользователю больших возможностей и удобства в подготовке и выполнении запросов создаются клиентские приложения.
Для организации запросов к серверной базе данных на языке SQL или с помощью клиентского приложения возможны различные способы взаимодействия, заметно влияющие на эффективность. К числу основных способов такого взаимодействия относятся:
Интерфейс DB-LIB (библиотек баз данных);
Технологии ODBC (совместимости открытых баз данных);
Интерфейса OLE DB (связывания и встраивания объектов баз данных);
Технологии DAO (объектов доступа к данным);
Интерфейс DB-LIB представляет собой специально предназначенный для SQL интерфейс прикладных программ. Поэтому он является наименее мобильным из числа рассматриваемых в смысле возможностей переноса приложений в другую среду. С точки зрения производительности этот способ позволяет осуществить самый быстрый доступ к информации. Причиной этого является то, что он представляет оптимизированный интерфейс прикладного программирования и непосредственно использует язык запросов системы SQL.
Технологии ODBC предназначены для обеспечения возможности взаимосвязи между различными СУБД и получения от приложения запросов на выборку информации, перевод их на язык ядра адресуемой базы дан
Разработка приложений архитектуры клиент-сервер при помощи SQL курсовая работа. Программирование, компьютеры и кибернетика.
Реферат По Биологии Скачать
Реферат На Тему Здоровье Населения
Словесные Методы Обучения Курсовая Работа
Контрольная работа: Универсальная тригонометрическая подстановка
План Сочинения На Тему Землетрясение Правила Поведения
Контрольная Работа No 1 На Тему Неравенства
Реферат: План схема рабочего места педагога психолога
Стругацкие Собрание Сочинений
Настоящее Искусство Сочинение 9.3 Огэ
Реферат На Тему Анализ Указа Президента Республики Беларусь От 27 Февраля 2007 Г. № 111 "О Внесении Изменений И Дополнений В Указ Президента Республики Беларусь От 19 Марта 2006 Г. № 154"
Сочинение На Тему Смерть Старшего Дубровского
Реферат: Системы бронирования в Internet
Сколько Слов Писать В Итоговом Сочинении
Контрольная Работа Живое Средневековье 6 Класс
Контрольная работа по теме Работа менеджера над собой
Методичка На Тему Проектирование Приспособлений Для Базирования И Закрепления Деталей
Реферат: 1001 день, или новая Шахерезада
Сочинение Характеристика Человека 8 Класс
Вот Злонравия Достойные Плоды Сочинение 7 Класс
Правовое Регулирование Транспортировки Сжиженного Природного Газа Диссертация
Характеристика актиномицетов - Биология и естествознание презентация
Обстоятельства, подлежащие доказыванию по уголовным делам о превышении должностных полномочий в сфере лесного хозяйства на примере Иркутской области - Государство и право статья
Механизмы управления фотосинтезом растений - Биология и естествознание контрольная работа