Программа PL/SQL структурируется при помощи отдельных блоков, в которых группируются связанные объявления и операторы. Каждый блок программы PL/SQL имеет специальное назначение и решает определенную задачу. Следовательно, программу PL/SQL можно организовать таким образом, чтобы ее легче было понять.
Блок PL/SQL может включать три раздела: объявления, тело основной программы и обработчики исключительных ситуаций.
• Раздел объявлений блока PL/SQL – это часть блока, где объявляются переменные, константы, исключительные ситуации и т.д., которые затем становятся доступны во всех других частях блока.
• В теле основной программы содержатся исполняемые операторы блока. Другими словами, тело – это часть блока PL/SQL, в которой определяются его функциональные возможности.
• В разделе исключительных ситуаций находятся обработчики исключительных ситуаций, т.е. подпрограммы обработки ошибок. Когда оператор в теле блока определяет исключительную ситуацию (обнаруживает ошибку), он передает управление программой обработчику соответствующей исключительной ситуации, находящемуся в разделе обработчиков исключительных ситуаций.
Таким образом, структуру блока PL/SQL можно представить в следующем виде:
declare
/*раздел объявлений (переменные, типы, курсоры и др.)*/
begin
/*Основной раздел блока, называемый выполняемым. Содержит процедурные и SQL – операторы*/
exception
/*Раздел обработки исключительных ситуаций. Содержит операторы обработки ошибок*/
end;
Вообще говоря, обязательным в блоке является только выполняемый раздел, кроме того, он должен содержать, по крайней мере, один выполняемый оператор.
Программы PL/SQL не ограничены одним блоком. Для лучшей организации выполнения подзадач в программе PL/SQL можно создать вложенные блоки в теле программы и в разделе исключительных ситуаций блока. Вообще говоря, объявления блока видны всем операторам тела блока и раздела обработки исключительных ситуаций, в том числе и операторам “вложенных подблоков”.
Во все блоки программы PL/SQL рекомендуется включать комментарии, документирующие объявления и функциональные возможности программы. В комментариях объясняется назначение программы и отдельных ее фрагментов.
В PL/SQL поддерживается два различных стиля комментариев:
-- однострочный комментарий начинается с двойного дефиса;
/* многострочный комментарий начинают с "/*" и заканчивают "*/"; многострочный комментарий может содержать любое число строк. */
В примерах, предлагаемых в этом разделе, встречаются комментарии для пояснения функционального назначения фрагментов программ.