Проектирование. 380305БИ_Проектирование баз данных_лабораторные_ПоповВБ.docx. Лабораторная работа 1. Интерфейс субд mysql. Предоставление доступа и привилегий. Утилиты, входящие в состав субд цель работы
Скачать 1.15 Mb.
|
REPLACE В SQL запросе означает, что необходимо замещать записи с совпадающими значениями ключей. INTO TABLE6 указывает имя таблицы, куда будут импортированы данные. FIELDS TERMINATED BY ';' 7 указывает разделители полей, порядок полей должен быть таким же, как и в таблице назначения, OPTIONALLY ENCLOSED BY '\"' указывает, что поля VARCHAR взяты в двойные кавычки, и LINES TERMINATED BY '\r' 8 в) Использовать утилиту mysqlimport также для загрузки данных из текстового файла. Эти и другие операции можно выполнить также и в программе MySQL-Front. Рисунок 15 - Использование программы MySQL-front для заполнения таблиц данными из файла Таблица поставщиков (S)
Таблица деталей (P)
Таблица изделий (J)
Таблица поставок (SPJ)
Убедиться в успешности выполненных действий. При необходимости исправить ошибки. Для ускорения процесса ввода данных рекомендуется воспользоваться командой LOADDATA (синтаксис см. в приложении), предварительно скопировав содержимое перечисленных таблиц сначала в Excel, а оттуда в текстовые файлы. Такой порядок необходим, для того, чтобы текстовый файл был с табуляцией. 5. Выполнить модификацию структуры таблицы SPJ, добавив в SPJ поле с датой поставки. Убедиться в успешности выполненных действий. При необходимости исправить ошибки (команда Alter table). 6. Уничтожить созданные таблицы, предварительно сохранив инструкции для восстановления структуры БД и информационного наполнения, используя средства работы СУБД9. Убедиться в успешности выполненных действий. 7. Выполнить необходимые действия, написав и выполнив соответствующие запросы для модификации таблиц, чтобы структура соответствовала концептуальной модели учебной базы данных (рисунок 5). Убедиться в успешности выполненных действий. При необходимости исправить ошибки. Рисунок 16 - Концептуальная модель учебной базы данных Проверить результат заполнения таблиц, написав и выполнив простейший запрос: select * from имя_таблицы При наличии ошибок выполнить корректировку, исправив либо удалив ошибочные строки таблиц Контрольные вопросы В каких режимах возможно создание базы данных? Какие типы данных допустимы при создании таблицы? Как выполнить создание таблицы средствами СУБД? Как выполнить создание таблицы средствами языка SQL? Как разделяются операторы SQL в случае нескольких операторов в запросе? Каким образом выполнить простейшие операции вставки строк данных в таблицу средствами SQL? Каким образом выполнить простейшие операции модификации строк таблицы средствами SQL? Каким образом выполнить просмотр таблицы? Как получить информацию о структуре таблицы в рамках СУБД MySQL? ПРИМЕР ВЫПОЛНЕНИЯ. Создание баз данных в HeidiSQL Создаем базу данных с помощью команды CREATE DATABASE `Лабораторная 3` /*!40100 COLLATE 'utf8_general_ci' */; SHOW DATABASES;/* Открытие сеанса "Unnamed\Unnamed" */ USE `лабораторная 3`; SELECT `DEFAULT_COLLATION_NAME` FROM `information_schema`.`SCHEMATA` WHERE `SCHEMA_NAME`='лабораторная 3'; SHOW TABLE STATUS FROM `лабораторная 3`; SHOW FUNCTION STATUS WHERE `Db`='лабораторная 3'; SHOW PROCEDURE STATUS WHERE `Db`='лабораторная 3'; SHOW TRIGGERS FROM `лабораторная 3`; SHOW EVENTS FROM `лабораторная 3`; Далее создаем таблицы ALTER TABLE `а`CHANGE COLUMN `Столбец 1` `Номер` INT(11) NULL DEFAULT NULL FIRST,ADD COLUMN `Имя` INT(11) NULL DEFAULT NULL AFTER `Номер`,ADD COLUMN `Фамилия` INT(11) NULL DEFAULT NULL AFTER `Имя`;RENAME TABLE `а` TO `Группа`; SHOW CREATE TABLE `лабораторная 3`.`Группа`; SHOW VARIABLES LIKE 'collation_database'; CREATE TABLE `Дисциплины` (`Название` INT NULL,`Преподаватель` INT NULL)COLLATE='utf8_general_ci'ENGINE=InnoDB; SELECT `DEFAULT_COLLATION_NAME` FROM `information_schema`.`SCHEMATA` WHERE `SCHEMA_NAME`='лабораторная 3'; SHOW TABLE STATUS FROM `лабораторная 3`; Заполняем таблицы данными Таблица группы
Таблица дисциплины
|