Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Управление данными. Использование технологий ORACLE для реализации баз данных. Учебное пособие.pdf
Скачиваний:
0
Добавлен:
15.08.2026
Размер:
722 Кб
Скачать

1.2. ПРЕИМУЩЕСТВА PL/SQL

PL/SQL – это язык программирования, подходящий для нескольких задач, связанных с использованием базы данных Oracle.

Есть много преимуществ использования языка программирования PL/SQL совместно с базой данных Oracle:

интеграция процедурных конструкций с SQL;

модульная разработка программ;

повышенная производительность;

интеграция с инструментами Oracle;

портативность;

обработка исключений.

Преимущество 1: интеграция процедурных конструкций с SQL.

Это основное преимущество PL/SQL. SQL – это непроцедурный язык. Когда вы вводите команду SQL, команда сообщает серверу базы данных, что делать. Однако Вы не можете указать, как или как часто это делать. PL/SQL объединяет управляющие операторы и условные операторы с SQL. Это даёт лучший контроль над операторами SQL и их исполнением.

Преимущество 2: разработка модульной программы.

Базовой единицей в программе PL/SQL является блок. Все программы PL/SQL состоят из блоков или модулей, которые можно объединять в последовательности или вложить их в другие блоки.

Хорошая практика программирования использует модульные программы, чтобы разделить программу управление на разделы, которые могут быть проще для понимания и поддержки.

Преимущества модульной программы заключаются в возможности:

сгруппировать логически связанные конструкции внутри блоков;

вкладывать блоки внутрь других блоков для создания мощных про-

грамм;

делиться блоками с другими программистами, чтобы ускорить время разработки.

PL/SQL позволяет разбить сложное приложение на меньшие по размеру, более управляемые и логически связанные модули для повышения простоты обслуживания и отладки

Преимущество 3: повышенная производительность.

8

PL/SQL позволяет логически комбинировать несколько SQL операторов как единое целое или блок. Приложение может отправить весь блок в базу данных, вместо того, чтобы посылать операторы SQL по одному, что делает процесс выполнения программы быстрее. Это значительно снижает количество обращений к базе данных.

Следующие функции также позволяют улучшить представление. Переменные PL/SQL хранят данные в одном внутреннем двоичном фай-

ле, как в базе данных, поэтому преобразование данных не требуется.

PL/SQL выполняется в том же пространстве памяти, что и сервер Oracle и, следовательно, нет накладных расходов на связь между двумя программами.

Функции PL/SQL можно вызывать прямо из SQL.

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

Преимущество 4: интеграция с инструментами Oracle.

PL/SQL интегрирован в инструменты Oracle, такие как Oracle Forms Developer, Oracle Report Builder и Application Express.

Преимущество 5: портативность.

Программы PL/SQL могут запускаться на любом сервере Oracle и работают независимо от операционной системы и платформы. Это позволяет писать переносимые программные пакеты и создавать библиотеки, которые можно повторно использовать в базах данных Oracle в различных средах. Можно даже

9

заранее учесть эти различия и установить инструкции для работы определённым образом в конкретной среде.

Преимущество 6: обработка исключений.

Исключением является ошибка, возникающая при доступе к базе данных. Примеры исключений:

аппаратные или сетевые сбои;

логические ошибки приложения;

ошибки целостности данных и т.д.

Можно подготовиться к этим ошибкам, написав код обработки исключений. Код обработки исключений сообщает приложению, что делать в случае возникновения исключения. Можно определить отдельные блоки для работы с исключениями и таким образом приложение может обработать ошибку и передать сообщение о проблеме пользователю, не вызывая сбоя системы.

Среды программирования PL/SQL: Oracle предлагает множество инструментов, которые способны предоставить среду для разработки базы данных – управляемые приложения с использованием PL/SQL.

10

2.КОМАНДЫ DATA DEFINITION LANGUAGE (DDL)

2.1.ОСНОВНЫЕ ОБЪЕКТЫ ORACLE

Кчислу основных объектов Oracle отосятся: таблица, представление, пользователь, последовательность.

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

Представление (VIEW) – это поименованная, динамически поддерживаемая сервером выборка из одной или нескольких таблиц. Оператор SELECT, определяющий выборку, ограничивает видимые пользователем данные. Сервер гарантирует актуальность представления, т.е. формирование представления (материализация соответствующего запроса) проводится каждый раз при использовании представления. Используя представления, администратор ограничивает доступную пользователям часть базы данных только теми данными, которые реально необходимы.

Пользователь (USER) – объект, обладающий возможностью создавать и использовать другие объекты ORACLE, а также запрашивать выполнение функций сервера. К числу таких функций относятся организация сессии, изменение состояния сервера и базы данных, запрос на выполнение операторов SQL и др.

Для упрощения решения задач идентификации и именования в базе дан-

ных ORACLE поддерживает объекты: последовательность и синоним.

Последовательность (SEQUENCE) – это объект, обеспечивающий генерацию уникальных номеров в условиях многопользовательского асинхронного доступа. Обычно элементы последовательности используются для вставки уникальных идентификационных номеров для элементов таблиц базы данных.

Синоним (SYNONYM) – это альтернативное имя-псевдоним объекта ORACLE, который позволяет пользователям базы данных иметь доступ к данному объекту. Синоним может быть частным и общим. Общий (public) синоним позволяет всем пользователям базы данных обращаться к соответствующему объекту по альтернативному имени.

11

Для управления эффективностью доступа к данным Oracle поддерживает объекты: индекс, табличная область и кластер.

Индекс (INDEX) – это объект базы данных, создаваемый для повышения производительности выборки данных. Индекс создаётся для столбцов таблицы или для представления в пространстве базы данных и обеспечивает более быстрый доступ к данным базы данных за счёт хранения прямых ссылок на место расположения строк, содержащих требуемые данные.

Табличная область (TABLESPACE) – именованная часть базы данных, используемая для распределенияпамяти для таблиц и индексов.

Кластер (CLUSTER) – объект, задающий способ совместного хранения данных нескольких таблиц, содержащихинформацию, обычно обрабатываемую совместно. Кластеризация столбцов таблиц позволяет уменьшить время выполнения выборки. Строки таблиц, имеющие одинаковое значение в кластеризованных столбцах, хранятся в базе данных специальным образом.

Для эффективного управления разграничением доступа к данным Oracle поддерживает объект роль.

Роль (ROLE) – именованная совокупность привилегий, которые могут быть предоставлены пользователям или другим ролям. ORACLE поддерживает несколько стандартных или предопределённых ролей.

Для программирования алгоритмов обработки данных, реализации механизмов поддержки целостности базыданных Oracle использует объекты: проце-

дура, функция, пакет и триггер.

Процедура (PROCEDURE) – это поименованный, структурированный набор переменных и операторов SQL и PL/SQL, предназначенный для решения конкретной задачи.

Функция (FUNCTION) – это поименованный, структурированный набор переменных и операторов SQL и PL/SQL, предназначенный для решения конкретной задачи и возвращающий значение переменной.

Пакет (PACKAGE) – это поименованный, структурированный набор переменных, процедур и функций, связанных единым функциональным замыслом. Например, ORACLE поставляет пакет DBMS_OUTPUT, в котором собраны процедуры и функции, предназначенные для организации ввода-вывода.

Триггер (TRIGGER) – это хранимая процедура, которая автоматически запускается тогда, когда происходит связанное с триггером событие. Обычно события связаны с выполнением операторов INSERT, UPDATE, DELETEв таблице.

Основные объекты Oracle создаются, модифицируются, уничтожаются средствами языка определения данных DDL (Data Definition Language), который является подмножеством языкаSQL.

12

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