Практическая работа №9
Тема: «Создание и изменение объектов базы данных средствами SQL»
Цель работы: научиться создавать и изменять средствами SQL таблицы и индексы.
Теоретическая часть
Под созданием и изменением подразумевается только создание и изменение структуры и параметров таблиц, а не хранящихся в них данных. Часть языка SQL, служащая для решения этих задач, называется языком описания данных (Date Definition Language – DDL).
Команда создания таблицы в SQL:
Синтаксис:
CREATE TABLE <Имя таблицы >
(<имя поля > <тип данных>[(<размер>)],
<имя поля > <тип данных>[(<размер>] ... );
Команда внесения изменений в структуру таблиц:
Синтаксис:
ALTER TABLE <имя
таблицы> {ADD {COLUMN <имя поля> <тип поля>[(<размер>)]
[NOT NULL] [CONSTRAINT <имя индекса>] |
ALTER COLUMN <имя поля> <тип поля>[(<размер>)]|
CONSTRAINT <описание составного индекса>} |
DROP {COLUMN <имя поля> | CONSTRAINT <имя индекса>} }
В стандартном языке SQL применяются следующие типы данных:
INTEGER |
До 10 цифр и знак |
SMALL |
До 5 цифр и знак |
DECIMAL(p,q) |
0<p<16 всего позиций, q – цифр после запятой |
FLOAT |
Вещественное, определяется СУБД (REAL в ACCESS) |
DOUBLE PRECISION |
Вещественное, определяется СУБД (FLOAT в ACCESS!!!), точность и диапазон больше, чем у FLOAT |
CHAR(n) |
Строка из n (n<256) символов |
Практически во всех СУБД, поддерживающих SQL, применяются дополнительно следующие типы данных:
VARCHAR(n) |
Строка из n символов (nmax >4096 определяется СУБД ) |
DATE |
Формат определяется специальной командой (по умолчанию mm/dd/yy) |
TIME |
Формат определяется специальной командой (по умолчанию hh.mm.ss) |
DATETIME |
Комбинация даты и времени |
MONEY |
Денежный |
Ход выполнения работы
Задание. Для создания БД «Путешествие» определитесь со странами (5 стран), которые бы вы хотели посетить, определив:
1)название страны 2) площадь 3)численность населения в млн. 4)название столицы 5)население столицы. Информацию по запросам найдите в интернете.
1. Создание таблицы средствами SQL.
1.1 Создайте в вашей папке новую папку «Страна».
1.2 Загрузите СУБД Access. Для сохранения БД под именем «Путешествие» выберите только что созданную папку Страна. Закройте автоматически созданную Таблицу 1 в начале работы программы.
Создание запросов на SQL в Access начинается вызовом конструктора запросов. Для этого в окне базы данных нужно выбрать пункт меню «Создание» и пункт «Конструктор запросов». Далее, не выбирая таблицу, закройте окно «Добавление таблицы» и перейдите в режим SQL (рисунок 1, обозначено красным).
Рисунок 1
1.3 Набрать команды на создание таблицы «Страна» (название, площадь, численность населения в млн. чел.):
CREATE TABLE Страна1
(название CHAR(60),
площадь REAL ,
население REAL);
Пример представлен на рисунке 2.
Рисунок 2
1.4 Запустите запрос. Результат работы запроса будет в каталоге таблиц. Появиться таблица с именем «Страна». Сохраните созданный запрос под именем «Запрос1».
1.5 Откройте таблицу «Страна» в режиме конструктора и посмотрите, какие поля, и какие типы данных отразились в ней. Закройте таблицу.
1.6 Внесем изменения в таблицу «Страна», определив ей первичный ключ.
Т.к. приведенная выше команда CREATE TABLE не создает автоматического счетчика – первичного ключа, добавим в таблицу поле Id_strana.
Для добавления к таблице «Страна» поля, являющегося первичным ключом, служит команда:
ALTER TABLE Страна
ADD COLUMN Id_strana INTEGER NOT NULL PRIMARY KEY;
Создание Запроса 2 (рис. 3).
Рисунок 3
В поле Id_strana должен храниться номер записи. Проверьте наличие Id_strana в режимах: таблица, конструктор (рис. 4,5)
Рисунок 4 – Режим таблицы
Рисунок 5 – Режим конструктора
В режиме конструктора перетащите поле Id_strana, определив его перед полем название (выделите поле - стрелка → и перетащите) (рис. 6).
Рисунок 6 – Режим таблицы
1.7 Самостоятельно с помощью команды CREATE TABLE создайте таблицу «Столица» со следующими атрибутами и одной записью:
- город
- страна
- население столицы
Подберите соответствующие типы данных. Выполните запрос. Пример представлен на рисунке 7.
Рисунок 7
1.8 Внесение изменений в структуру таблицы «Страна».
Команда, с помощью которой к таблице «Страна» добавляется поле «Столица» выглядит так:
ALTER TABLE Страна
ADD COLUMN столица CHAR(30) NOT NULL UNIQUE;
На поле «столица» наложены 2 ограничения: не допускается пустое поле (NOT NULL) и название столицы должно быть уникальным (UNIQUE).
Создайте SQL-запрос на добавление поля «Столица» (рис. 8). Сохраните запрос. Проверьте, что в таблицу «Страна» добавилось поле «Столица» (рис. 9).
Рисунок 8
Рисунок 9 – Режим таблица
1.9 Для создания связи между двумя таблицами выполнить следующие действия:
- открыть таблицу «Страна» в режиме конструктора;
- в поле «столица» выбрать тип данных Мастер подстановок (рис. 10)
- для подстановки выбрать таблицу «Столица» (рис.11)
- в диалоговом режиме перенесите все поля таблицы «Столица» из левой части окна в правую (рис. 12)
Рисунок 10
Рисунок 11
Рисунок 12
1.10 Установите связь «многие к одному» в схеме данных (рис. 13,14).
Рисунок 13 – Установка связи в схеме данных
Рисунок 14 – Схема данных
1.11 Для появления поля «население» в таблице «Столица» из таблицы «Страна», необходимо создать запрос в режиме конструктора, добавить таблицы и перенести вниз окна:
- из таблицы «Страна» все поля, начиная с поля Id_strana до поля столица;
- из таблицы «Столица» поле население.
Рисунок 15 демонстрирует выполнение пункта 1.12.
Рисунок 15
1.12 Заполните таблицу «Столица» пятью записями (пример – рис.16).
Рисунок 16
1.13 Введите 5 записей в таблицу «Страна», выбирая столицу из списка таблицы «Столица». Вместе с наименованием столицы появятся данные о ее населении (пример, рис.17)
Рисунок 17
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.