Читать «SQL за 24 часа» онлайн - страница 164

Unknown

LOOP

FETCH EMP_CURSOR INTO EMP_REC;

EXIT WHEN EMP_CURSOR%NOTFOUND;

IF (EMP_REC.MID_INIT IS NULL) THEN

UPDATE EMPLOYEE_TBL

SET MID_INIT = 'X'

WHERE EMP_ID = EMP_REC.EMP_ID;

COMMIT;

END IF;

END LOOP;

CLOSE EMP_CURSOR;

END;

В данном операторе представлены два из упомянутых выше разделов блока - разделы DECLARE и PROCEDURE. Сначала с помощью запроса объявляется курсор EMP_CURSOR. После этого объявляется переменная EMP_REC, чей тип данных совпадает с типом данных (%ROWTYPE) столбцов объявленного курсора. Первым шагом в разделе PROCEDURE (начинающемся оператором BEGIN) является открытие курсора. После этого для просмотра всех записей курсора используется оператор LOOP, заканчивающийся ключевыми словами END LOOP. Для всех строк курсора, в которых средний инициал имени служащего пропущен (т. е. равен NULL), данные таблицы EMPLOYEEJTBL должны быть обновлены. Обновление состоит в добавлении среднего инициала 'X'. После этого изменения подтверждаются, и курсор, наконец, закрывается.

MySQL

MySQL представляет собой многопользовательское многозадачное приложение баз данных SQL типа клиент/сервер. MySQL состоит из сетевого сервера (демона), терминальной программы-клиента, нескольких дополнительных программ-клиентов и ряда библиотек. Главные преимущества MySQL - скорость работы, надежность и простота использования. Изначально приложение MySQL разрабатывалось для обеспечения быстрого доступа к очень большим базам данных.

Приложение MySQL можно найти в Internet по адресу http://www.mysql.com. Чтобы установить программные файлы MySQL, вам потребуется программа gunzip, чтобы разжать предлагаемый бинарный файл, и подходящая версия программы TAR, чтобы распаковать входящие в него файлы Предлагаемый в Internet бинарный файл будет иметь название mysql-VERSiON-os. tar. gz, где VERSION означает идентификатор версии MySQL, а OS - название соответствующей операционной системы.

Вот пример выполнения запроса в системе MySQL.

mysql> SELECT CURRENT_DATE(),VERSION();

+----------------+------------+

| current date() | version () |

+----------------+------------+

| 1999-08-09 | 3-22.23b |

+----------------+------------+

1 row in set (0.00 sec)

mysql>

Интерактивные операторы SQL

Интерактивные операторы SQL - это такие операторы SQL, которые сами спрашивают о необходимых переменных, параметрах и других необходимых для их выполнения данных Скажем, у вас имеется интерактивный оператор SQL для создания в базе данных записей с информацией о новых пользователях. Такой оператор SQL может попросить вас ввести учетную запись нового пользователя, его реальное имя и номер контактною телефона. Такой оператор применяется для ввода информации об одном новом пользователе или о многих одновременно. Без такого оператора для каждого из пользователей пришлось бы выполнить свой отдельный оператор CREATE ScR Интерактивный оператор SQL может запросить у вас информацию о привилегиях для создаваемого пользователя Не все производители предлагают интерактивные опера юры SQL. вам придется уточнить это по документации, сопровождающей систему управления базой данных В следующих разделах приводятся примеры использования интерактивных операторов SQL в базах данных Oracle.