Міністерство освіти і науки України
Національний університет Львівська політехніка
Звіт
до лабораторної роботи № 2
на тему: “Проектування реляційної бази даних”
Варіант № 7
Виконав
Перевірив
Досин Д. Г.
Львів — 2009
Завдання
На мові SQL написати скріпт (послідовність команд) для створення бази даних відповідно до структури, розробленої в результаті виконання лабораторної роботи №1.
Створити відповідну базу даних, шляхом застосування скріпта з п.1. Рекомендується використання СУБД MySQL. Допускається використання інших СУБД, при умові підтримання нею мови SQL.
Написати скріпт на мові SQL для внесення до розробленої та реалізованої БД тестових даних. Забезпечити не меньше 5 кортежів у кожному з відношень бази даних, якщо це допускає доменна структура відношення.
Написати скріпти на мові SQL для вибору з БД даних із кожної з її таблиць.
Оформити звіт про виконання лабораторної роботи, до якого включити усі розроблені скріпти, дпопвнюючи їх усіма необхідними коментарями.
Звіт про виконання лабораторної роботи на сторінках білого паперу формату А4 може бути написано розбірливо від руки.
Данна база данних буде складатись з двох таблиць. В першій таблиці буде зберігатися інформація про автомобіль, а в другій таблиці буде зберігатися інформація про особу — власника автомобіля.
Формування та заповнення таблиць
Код який формує таблицю “автомобілей”:
CREATE TABLE `car` (
`id` int(10) NOT NULL auto_increment,
`v_id` text NOT NULL,
`na` varchar(200) NOT NULL,
`nka` varchar(200) NOT NULL,
`ma` varchar(200) NOT NULL,
`ka` varchar(200) NOT NULL,
`rva` varchar(200) NOT NULL,
`ra` varchar(200) NOT NULL,
`ntp` varchar(200) NOT NULL,
`ns` varchar(200) NOT NULL,
`npt` varchar(200) NOT NULL,
`dpt` varchar(200) NOT NULL,
`kla` varchar(200) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;
Результат:
Код який заповнює таблицю:
INSERT INTO `car` VALUES (1, '1', 'bc7777b0', 'ui12390809812', 'BMW', 'red', '10.01.2009', '12.06.2009', '123123', '321312', 'c12321', '14.06.2009', 'легковий');
Результат:
Код:
INSERT INTO `car` VALUES (2, '2', 'bc7777b0', 'ui12390809812', 'BMW', 'red', '10.01.2009', '12.06.2009', '123123', '321312', 'c12321', '14.06.2009', 'легковий');
Результат:
Код:
INSERT INTO `car` VALUES (3, '3', 'bc7777b0', 'ui12390809812', 'BMW', 'red', '10.01.2009', '12.06.2009', '123123', '321312', 'c12321', '14.06.2009', 'легковий');
Результат:
Код:
INSERT INTO `car` VALUES (4, '4', 'bc7777b0', 'ui12390809812', 'BMW', 'red', '10.01.2009', '12.06.2009', '123123', '321312', 'c12321', '14.06.2009', 'легковий');
Результат:
Код:
INSERT INTO `car` VALUES (5, '5', 'bc7777b0', 'ui12390809812', 'BMW', 'red', '10.01.2009', '12.06.2009', '123123', '321312', 'c12321', '14.06.2009', 'легковий');
Результат:
Код який формує таблицю “власників автомобілей”:
CREATE TABLE `person` (
`id` int(10) NOT NULL auto_increment,
`pib` varchar(255) NOT NULL,
`pva` text NOT NULL,
`nvp` text NOT NULL,
`dvvp` float NOT NULL,
`kvp` varchar(100) default NULL,
`pp` text NOT NULL,
`kp` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;
Результат:
Код який заповнює таблицю:
INSERT INTO `person` VALUES (1, 'Дзера', 'Львів', '123', 12.12, 'B', '-', '-');
Результат:
Код який заповнює таблицю:
INSERT INTO `person` VALUES (2, 'Дзера', 'Львів', '123', 12.12, 'B', '-', '-');
Результат:
Код який заповнює таблицю:
INSERT INTO `person` VALUES (3, 'Дзера', 'Львів', '123', 12.12, 'B', '-', '-');
Результат:
Код який заповнює таблицю:
INSERT INTO `person` VALUES (4, 'Дзера', 'Львів', '123', 12.12, 'B', '-', '-');
Результат:
Код який заповнює таблицю:
INSERT INTO `person` VALUES (5, 'Дзера', 'Львів', '123', 12.12, 'B', '-', '-');
Результат:
Реалізація вибірки з першої таблиці:
Код:
SELECT * FROM `car`
Результат:
Код:
SELECT * FROM `person`
Результат:
Висновок: в даній лабораторній роботі я навтився формувати та заповнювати, а також робити повну вибірку таблиць бази данних за допомогою команд командного рядка MySQL.