Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Эл1_БД.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.78 Mб
Скачать

2.5.3. Создание таблиц в oOoBase

Для создания таблицы выбираем категорию объектов «Таблицы» в левой части окна приложения, а в правой верхней части этого окна - режим «Создать таблицу в режиме дизайна». В результате откроется окно Конструктора таблиц (рис.6). Создадим таблицу Факультет (facultet).

Рис. 6. Определение структуры таблицы в Конструкторе таблиц

Устанавливаем свойства полей:

• f_num - TINYINT, обязательное, длина 3, ключевое;

• f_name - VARCHAR, длина 50, необязательное.

После определения полей необходимо задать ключевое поле. В данной таблице это будет поле f_num. Для того чтобы сделать поле ключевым, необходимо активизировать правой кнопкой мыши указатель строки (слева от имени поля) и из выпадающего меню выбрать пункт «Первичный ключ». В результате слева от имени поля появится знак ключа. Далее сохраняем таблицу. В результате в правой нижней части окна приложения появляется таблица с именем fakultet. Ее содержание (пока отсутствующее) можно просмотреть, выбрав для зоны предварительного просмотра режим «Документ» (рис.7).

Рис.7. Новая таблица и режим предварительного просмотра

Далее аналогичным образом создадим еще шесть таблиц. Таблицу Специальность (special) со структурой:

• s_code - VARCHAR(6), ключевое;

• s_name - VARCHAR(50), обязательное;

• s_price - DECIMAL(6), знаков после запятой 0.

Следующая таблица – Группы (groups), в которой описываются номера групп, соот­ветствующие специальности и курсы.

Описание полей таблицы groups:

• n_group - DECIMAL(4), знаков после запятой 0, первичный ключ;

• s_code - VARCHAR(6);

• f_num - TINYINT, длина 3;

• course - то же, что и f_num.

Теперь можно приступить к созданию таблицы - Списка студентов (spisok):

• n_zach - VARCHAR(6), первичный ключ;

• last - VARCHAR(50), обязательное;

• birth - DATE;

• n_group - DECIMAL(4), знаков после запятой 0;

• pay - VARCHAR(3).

Таблица Преподаватель (teacher):

• t_num - BIGINT, первичный ключ;

• t_fam - VARCHAR(30), обязательное;

• t_name- VARCHAR(10), обязательное;

• t_otch- VARCHAR(20), обязательное;

• kafedra- VARCHAR(50), обязательное;

• t_birth - DATE;

• stag - TINYINT, обязательное, длина 3.

Описание полей в таблице Дисциплина (predmet):

• p_code - TINYINT, первичный ключ;

• p_name - VARCHAR(30), обязательное;

• kol_chasov- INTEGER, обязательное;

Описание полей в таблице Сессия (session):

• code – INTEGER, первичный ключ;

• n_zach - VARCHAR(6), обязательное;

• t_num – BIGINT, обязательное;

•p_code - TINYINT, обязательное;

• date_sd- DATE, обязательное;

• bal- TINYINT, обязательное;

• semestr - TINYINT, обязательное;

• vid - VARCHAR(7), обязательное.

2.5.4. Формирование связей между таблицами многотабличной реляционной бд (создание схемы данных)

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

Сформируем связи между образованными выше таблицами. Для этого выбираем пункт верхнего меню Сервис -> Связи. Далее необходимо выбрать все таблицы из предложенного списка и вынести их на Рабочий стол OOBase (рис.8).

Рис.8. Выбор таблиц в режиме формирования Связей

После чего по одноименным полям различных таблиц (первичным и соответствующим внешним ключам) протягиваются связи. Например, для того чтобы сформировать связь между Группами и Факультетами, необходимо протянуть связь, не отпуская левой кнопки мыши, от поля f_num (Таблица groups) к полю f_num (Таблица fakultet). Аналогично формируются остальные связи до получения общей схемы данных – рис.9.

Рис. 9. Схема данных БД student

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