скалярная переменная и составная переменная в PL / SQL Oracle - PullRequest
0 голосов
/ 14 марта 2012

Я новичок в Oracle и только что прочитал, что у скалярной переменной нет внутреннего компонента, тогда как у составной переменной есть внутренний компонент.

Не могли бы вы объяснить, что это за внутренний компонент? Как это работает? Какова его цель?

1 Ответ

3 голосов
/ 14 марта 2012

Вам необходимо прочитать документацию о записях и коллекциях PL / SQL:

http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/composites.htm

Внутренние компоненты составной переменной - это просто структура, которая составляет саму переменную.

, например

В коллекции внутренние компоненты всегда имеют одинаковые данные типа, и называются элементами. Вы можете получить доступ к каждому элементу Переменная коллекции по ее уникальному индексу с этим синтаксисом имя_переменный (индекс). Чтобы создать переменную коллекции, вы либо определить тип коллекции, а затем создать переменную этого типа или используйте% TYPE.

В записи внутренние компоненты могут иметь разные типы данных, и называются полями. Вы можете получить доступ к каждому полю переменной записи по его имени, с этим синтаксисом: имя_переменной. Чтобы создать переменная записи, вы либо определяете тип записи, а затем создаете переменной этого типа или используйте% ROWTYPE или% TYPE.

Например, если я создаю тип записи:

TYPE person_rectype IS RECORD (
     forename VARCHAR2(30),
     surname  VARCHAR2(30),
     sex      VARCHAR2(1),
     dob      DATE
);

затем объявите переменную этого типа:

applicant_rec person_rectype;

Переменная applicant_rec имеет внутренние компоненты forename, surname, sex и dob, которые имеют типы данных VARCHAR2 и DATE.

Надеюсь, это поможет ...

...