Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
База данных / 2_Создание реляционной БД.doc
Скачиваний:
116
Добавлен:
18.03.2015
Размер:
716.29 Кб
Скачать

5.2 Создание первичного ключа

Если на этапе создания таблицы первичный ключ не был создан, то его можно (и нужно!!!) создать!

Допустим на этапе создания таблицы STUDENTSмы нее создали первичный ключ. Создадим его!

Открываем таблицу STUDENTS(двойной щелчок мышью по имени таблицы) Появляется окно

Переходим на вкладку «Ограничения» и выбираем подвкладку «Первичный ключ». Щелкаем правой кнопки мыши по экрану и выбираем «Новый первичный ключ»

Далее из выпадающего списка выбираем столбец (или столбцы) который должен быть включен в состав первичного ключа. Далее нажимаем кнопку .

Появится окно подтверждающее создание первичного ключа.

Закрываем окно – первичный ключ создан.

5.3. Создание внешних ключей

Создадим в таблице ACADEMYBOOKвнешний ключ на столбецRNдля связи с таблицейSTUDENTSпо первичному ключуRN.

Открываем таблицу ACADEMYBOOK. Переходим на вкладку «Ограничения» и подвкладку «Внешние ключи». Щелкаем правой кнопки мыши по чистому полу и выбираем в меню «Новый внешний ключ».

Появится окно

Далее выполняем следующие действия:

- даем название ключу (можно оставить то, что предлагает программа)

- Выбираем поле на которое создается внешний ключ.(в нашем случае поле RN)

- выбираем внешнюю таблицу (в нашем случае это STUDENTS)

- выбираем внешнее поле (в нашем случае это поле RNтаблицыSTUDENTS)

- выбираем правило обновления и правило удаления. (в нашем случае оба будут CASCADE)

далее жмем

В результате получаем окно подтверждения создания внешнего ключа и соответствующий SQLоператор.

6. Работа с sqlРедактором

6.1. Запуск SQLРедактора

Для того чтобы запустить SQLРедактор необходимо в главном меню программыIBExpertвыполнить командыИнструменты->SQL Редакторили нажать клавишу <F12>.

После это будет открыто окно SQLРедактора

Можно открыть запустить несколько параллельных копий SQLРедактора. Для запуска новой копии нужно выполнить командуИнструменты->новый SQL Редакторили нажать сочетание клавиш <Shift-F12>.

6.2. Создание, очистка и удаление запросов

Для того чтобы создать новый запрос нужно щелкнуть по пиктограмме . После этого в нижней части окнаSQLРедактора появиться пиктограмма с номером созданного запроса, а окно редактора будет очищено.

Переключение между созданными запросами осуществляется щелчком по пиктограмме с соответствующим запросом.

Для того чтобы очистить активный запрос нужно щелкнуть по пиктограмме .

Удалить активный запрос, можно щелкнув по пиктограмме .

Удалить все запросы, можно щелкнув по пиктограмме .

6.3. Выполнение запросов. Подтверждение и откат результатов выполнения запросов

Чтобы выполнить активный запрос нужно щелкнуть по пиктограмме .

Результаты работы любого типа запросов (вставка, изменение, удаление или выборка данных) могут быть либо приняты и сохранены в базе, либо отвергнуты и удалены.

Чтобы принять результаты выполнения запроса нужно щелкнуть по пиктограмме подтверждения транзакции .

Чтобы откатить результаты выполнения запроса нужно щелкнуть по пиктограмме отката транзакции .

6.4. Вставка данных в таблицы БД

Для вставки данных в таблицу используется оператор Insert, имеющий следующий формат

INSERT INTO имя_таблицы VALUES (значение_1, значение_2,…, значение_N)

Так, например, чтобы добавить запись в таблицу STUDENTSнеобходимо выполнить следующий оператор

INSERT INTO students VALUES (’02Д31235b’,’Иванов’, ’Максим’, ’Петрович’, 3, ’346’,3,3,’12.12.1985’,’o’)

При добавлении данных можно не заполнять поля допускающие значение Null(например, в таблицеSTUDENTSтакими являются поляMNAMEиDATER). В этом случае операторInsertпримет следующий вид

INSERT INTO имя_таблицы (имя_поля_1, имя_поля_2,…, имя_поля_N)VALUES (значение_1, значение_2,…, значение_N)

Например

INSERT INTO students (rn, lname, fname, kurs, grup, fac, spec, forma) VALUES (’02Д31235b’,’Иванов’, ’Максим’, 3, ’346’,3,3,’o’)

Вставьте во все таблицы вашей базы данных несколько записей, используя SQLРедактор. Для каждой таблицы создать совой запрос.