Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Answers.docx
Скачиваний:
25
Добавлен:
16.09.2019
Размер:
394 Кб
Скачать
☆

3.33 Язык запросов sql. Работа с записями и таблиц. Добавление, удаление, модификация

3.33 МОВА   ЗАПИТІВ SQL. РОБОТА З ЗАПИСАМИ І ТАБЛИЦЯМИ. ДОДАВАННЯ, ВИДАЛЕННЯ, МОДИФІКАЦІЯ.

 

Язык SQL – Structured Query Language – был разработан в 1974 г.

Додавання, видалення, модифікація.

Модификация данных может выполняться с помощью предложений DELETE (удалить), INSERT (вставить) и UPDATE (обновить). Подобно предложению SELECT они могут оперировать как базовыми таблицами, так и представлениями. Предложение DELETE имеет формат

DELETE

FROM   базовая таблица | представление

[WHERE фраза];

и позволяет удалить содержимое всех строк указанной таблицы (при отсутствии WHERE фразы) или тех ее строк, которые выделяются WHERE фразой. Предложение INSERT имеет один из следующих форматов:

INSERT

INTO    {базовая таблица | представление} [(столбец [,столбец] ...)]

VALUES ({константа | переменная} [,{константа | переменная}] ...);

или

INSERT

INTO {базовая таблица | представление} [(столбец [,столбец] ...)]

     подзапрос;

Предложение UPDATE также имеет два формата. Первый из них:

UPDATE (базовая таблица | представление}

SET     столбец = значение [, столбец = значение] ...

[WHERE фраза]

где значение - это

столбец | выражение | константа | переменная

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

UPDATE  {базовая таблица | представление}

SET     столбец = значение [, столбец = значение] ...

FROM    {базовая таблица | представление} [псевдоним],

        {базовая таблица | представление} [псевдоним]

      [,{базовая таблица | представление} [псевдоним]] ...

[WHERE  фраза]

3.34. Архитектуры построения систем клиент-сервер. Варианты построения серверной приложений. Варианты построения клиентская приложений

3.34. АРХІТЕКТУРИ ПОБУДОВИ СИСТЕМ КЛІЄНТ-СЕРВЕР. ВАРІАНТИ ПОБУДОВИ СЕРВЕРНИХ ПРИКЛАДЕНЬ. ВАРІАНТИ ПОБУДОВИ КЛІЄНТСЬКИХ ПРИКЛАДЕНЬ.

В архитектуре "клиент/сервер" функции приложения распределены между двумя (или более) компьютерами. В соответствии с тем, каким образом это сделано, выделяются три модели архитектуры "клиент/сервер":

  1. Модель доступа к удаленным данным (Remote Data Access - RDA);

  2. Модель сервера базы данных (DataBase Server - DBS);

  3. Модель сервера приложений (Application Server - AS).

RDA-модель

В RDA-модели (рис. 2) коды компонента представления и прикладного компонента совмещены и выполнятся на компьютере-клиенте. Последний поддерживает как функции ввода и отображения данных, так и прикладные функции ("толстый" клиент).

Доступ к информационным ресурсам обеспечивается, как правило, операторами специального языка (например, SQL) или вызовами функций специальной библиотеки (если имеется соответствующий API). Запросы к информационным ресурсам направляются по сети удаленному компьютеру-серверу базы данных. Последний обрабатывает и выполняет запросы и возвращает клиенту блоки данных. Говоря об архитектуре "клиент/сервер", в большинстве случаев имеют в виду именно эту модель.

DBS-модель

В DBS-модели (рис. 3) процесс, выполняемый на компьютере-клиенте, ограничивается функциями представления ("тонкий" клиент), а прикладные функции реализованы в хранимых процедурах (stored procedure), которые также называют компилируемыми резидентными процедурами, или процедурами базы данных. Они хранятся непосредственно в базе данных и выполняются на компьютере-сервере базы данных, где функционирует и компонент, управляющий доступом к данным, то есть ядро СУБД.

AS-модель

В AS-модели (рис. 4) процесс, выполняющийся на компьютере-клиенте, отвечает, как обычно, за ввод и отображение данных (то есть реализует функции первой группы). Прикладные функции выполняются группой процессов (серверов приложений), функционирующих на удаленном компьютере (или нескольких компьютерах). Доступ к информационным ресурсам, необходимым для решения прикладных задач, обеспечивается таким же способом, что и в RDA-модели. Серверы приложений выполняются, как правило, на том же компьютере, где функционирует менеджер ресурсов, однако могут выполняться и на других компьютерах.

Архитектура клиент-сервер предназначена для разрешения проблем файл-серверных приложений путем разделения компонентов приложения и размещение их там, где они будут функционировать более эффективно. Особенностью архитектуры клиент-сервер является использование выделенных серверов баз данных, понимающих запросы на языке структурированных запросов SQL и выполняющих поиск, сортировку и агрегирование информации на месте без излишней перекачки данных на рабочие станции.

Большинство конфигураций клиент-сервер использует двухзвенную модель, состоящую из клиента, который обращается к услугам сервера. Для эффективной реализации такой схемы часто применяют неоднородную сеть. Как минимум, предполагается, что диалоговые компоненты PS и PL размещаются на клиенте, что позволяет обеспечить графический интерфейс. Далее возможно разместить компоненты управления данными DS и FS на сервере, а диалог (PS, PL), логику BL и DL на клиенте. Типовое определение архитектуры клиент-сервер - приложение на клиенте, СУБД - на сервере - использует эту схему.

Переместив с клиента часть логики приложения на сервер, получим систему клиент-сервер с разделенной логикой. Часть прикладной логики может быть реализована на клиенте, а другая часть логики - в виде обработчиков событий (триггеров) и хранимых процедур на сервере БД. Такая схема при удачном разделении логики приводит к сбалансированной загрузке клиентов и сервера, но при этом затрудняется сопровождение приложений.

На основе многотерминальной системы в качестве сервера приложений также возможно создание архитектуры клиент-сервер (рисунок 4). В этом случае в многозадачной среде сервера приложений выполняются программы пользователей, а клиентские узлы вырождены и представлены терминалами. Подобная схема информационной системы характерна для Unix.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]