Работа с приложением PL/SQL Developer, страница 5


6. Пример создания связанных таблиц.

Для создания таблицы «Факультеты» используется менеджер создания таблиц (меню File->New->Table).

Рис. 15

На первой вкладке General в поле Owner выбрать текущего пользователя, под которым вы работаете, в примере указан пользователь «User1». В Следующем поле Name указать название таблицы «Факультеты». Табличным пространством, где будет храниться таблица, указать пространство Users, и перейти к следующей вкладке Columns.

Перевести курсор в табличное поле под названием Name и указать там имя колонки «Имя_Ф». В поле Type задать значение типа переменной Varchar2 длиной 5 символов, далее снять галочку в поле Nullable, тем самым, задавая проверку на не пустую строку. Все остальные параметры оставить без  изменений.

Для создания первичного ключа необходимо перейти во вкладку Keys. В поле Name ввести название ключа «Код_Ф», в Type выбрать Primary, т.е. первичный. В поле Columns при помощи окна «Select key columns» путем перетаскивания в правую часть выбрать имя колонки, по которой создается ключ, как показано на рис 3. Все остальные поля остаются без изменения. Нажать кнопку Apply.

Тоже само можно было сделать не в интерактивном режиме а в режиме командной строки при помощи следующей конструкции:

create table Факультеты

(

Имя_Ф varchar2(5) not null

);

alter table Факультеты add constraint Код_Ф primary key (ИМЯ_Ф);

Рис. 16

Рис. 17

Аналогичным образом создать таблицу «Группы», за исключением момента касающегося создания ключей. Его мы дополним вторичным ключом (см. рис 18).

Рис. 18

Тоже самое, но с помощью командной строки:

create table Группы

(

  Имя_Гр    varchar2(10) not null,

  Факультет varchar2(5) not null

);

alter table Группы add constraint Код_Гр primary key (ИМЯ_ГР);

alter table Группы add constraint Ф_Код foreign key (Факультет) references факультеты (ИМЯ_Ф);

Для того чтобы внести данные в таблицу «Факультеты» необходимо в левой части PL/SQL Developer в списке объектов выбрать «Tables», далее «Факультеты» и вызвать контекстное меню при помощи правой клавиши мыши, в котором выбрать «Edit data». Во вновь открывшемся окне в поле ввести свои данные и нажать кнопку  как показано на рис 20.

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

insert into Факультеты values('кт');

insert into Факультеты values('кту');

Аналогичным образом внесем данные в таблицу «Группы».

Если вы ввели неправильное значение факультета то вы увидите следующее сообщение после нажатия на кнопку .

Рис. 19

Рис. 20

Для командной строки пример внесения данных в таблицу «Группы »следующий:

insert into Группы values('5145','кту');

insert into Группы values('5146','кту');

insert into Группы values('5147','кту');

insert into Группы values('5514','кт');

insert into Группы values('5515','кт');

insert into Группы values('5516','кт');

Воспользуемся менеджером построения запросов для просмотра введенных данных. Для этого вначале необходимо запустить командную строчку, а затем менеджер построения запросов. После запуска в левой части окна менеджера построения запросов выбрать пункт «Tables». Далее выбрать первую таблицу «Факультеты» и перетащить её в правую часть экрана, воспользовавшись для этого левой клавишей мыши. Аналогичным образом поступить и со второй таблицей. После перетаскивания второй таблицы менеджер запросов попросит активизировать связь между таблицами сделанную нами при помощи первичного и вторичного ключей. Для активизации необходимо поставить галочку в появившемся окне напротив символической связи. При помощи галочек выбрать те поля в таблицах, которые нас интересуют и отсортировать все по убыванию факультета, для этого необходимо в правом нижнем углу окна менеджера построения запросов выбрать пункт «Order By» в поле поместить название поля по которому производим сортировку (для того что бы запись появилась в поле необходимо её выделить мышью с сделать двойной «клик» )  и направить стрелочку вниз . Завершить работу менеджера построения запросов, в командной строке появится результат выполнения запроса рис 22.

Рис. 21

Рис. 22