пятница, 29 октября 2010 г.

Основы PL/SQL 2

Приколькно, ровно одну неделю назад мы с вами разговаривали на тему основ языка PL/SQL. Помните такую статью? Мы познакомились с двумя первыми пунктами из списка, который я приводил. Сейчас тоже приведу его, и мы начнем рассматривать еще два пункта, третий и четвертый:

Основы PL/SQL:

1.      Наборы символов и лексем
2.      Объявления
3.      Правила именования
4.      Область действия и видимость идентификаторов PL/SQL
5.      Присваивание значений переменным
6.      Выражения и операции сравнения PL/SQL
7.      Функции выдачи сообщений об ошибках в PL/SQL
8.      Использование функций SQL в PL/SQL
9.      Условная компиляция
10.  Использование PL/SQL для веб-приложений и серверных страниц

3. Правила именования. 

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

Простое имя (например - процедура) это обычное название (ProcName); в уточненном – используется точечная нотация (например – процедура входит в пакет, например – Paket.ProcName); если имя сетевое, то используется символ удаленного доступа (@) – указывается имя сетевой базы где находится процедура (ProcName@Base); и уточненное сетевое имя – процедура вызывается из пакета удаленной базы, в подобном случаем также используется точечная нотация (Base.ProcName@Base).

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

4. Область действия и видимость идентификаторов PL/SQL.

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

Идентификаторы, объявленные в блоке PL/SQL, считаются локальными по отношению к этому блоку и глобальными по отношению ко всем его подблокам. Если глобальный идентификатор вновь объявляется в подблоке, оба идентификатора остаются в области действия. Но в подблоке виден только локальный идентификатор потому, что при обращении к глобальному идентификатору необходимо использовать уточненное имя.

Объявлять один и тот же идентификатор в одном блоке нельзя, но его можно объявить дважды в двух разны блоках. Эти два элемента, представленные одним идентификатором, считаются различными. Любое изменение одного из них не влияет на другой. Но в блоке нельзя ссылаться на идентификаторы, объявленные в других блоках того же уровня, поскольку эти идентификаторы не являются ни локальными, ни глобальными по отношению к первому блоку.
Скорее всего, продолжение данной статьи я сделаю опять-таки через неделю, не получается раньше, но – буду пытаться.

Комментариев нет:

Отправить комментарий