История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Топ:
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Выпускная квалификационная работа: Основная часть ВКР, как правило, состоит из двух-трех глав, каждая из которых, в свою очередь...
Интересное:
Влияние предпринимательской среды на эффективное функционирование предприятия: Предпринимательская среда – это совокупность внешних и внутренних факторов, оказывающих влияние на функционирование фирмы...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Дисциплины:
2019-07-12 | 130 |
5.00
из
|
Заказать работу |
|
|
Изменение структуры таблицы является небезопасной операцией с точки зрения возможности потери данных. Если вы не вполне уверены, что получите требуемый результат, то лучше использовать резервное копирование данных, поступая следующим образом:
1. Создайте временную таблицу с помощью оператора CREATE TEMPORARY TABLE.
2. Скопируйте во временную таблицу данные из таблицы, структуру которой вы собираетесь модифицировать. Это можно сделать с помощью оператора INSERT INTO.
3. Далее можно поступить двумя способами:
– изменить структуру исходной таблицы так, как вам требуется. Этот способ лучше применять при коррекции структуры, не связанной с изменениями существующих ограничений на столбцы и/или на таблицу в целом;
– удалить исходную таблицу и создать новую под тем же именем и с требуемой структурой. Этот способ лучше использовать, если требуется изменить ограничения.
4. Скопируйте данные из временной таблицы в таблицу с новой структурой, используя оператор INSERT INTO. Больше временная таблица не нужна, она будет автоматически удалена по окончании сеанса работы с базой данных.
Рассмотрим пример.
Пусть имеется таблица Студенты (ID_студента, ФИО, Специальность), в которой первичным ключом является ФИО.
Требуется изменить первичный ключ, а именно сделать первичным ключом столбец ID_студента. Кроме того, необходимо в столбце ФИО запретить неопределенные значения, а также добавить столбец примечание неограниченной длины. Чтобы решить эту задачу, можно выполнить следующую последовательность запросов:
CREATE TEMPORARY TABLE stud _ tmp (
ID _ студента INTEGER,
ФИО CHAR(20),
Специальность CHAR(15)
);
INSERT INTO stud_tmp
SELECT * FROM Студенты;
DROP TABLE Студенты;
CREATE TABLE Студенты (
|
ID_ студента INTEGER PRIMARY KEY,
ФИО CHAR(20) NOT NULL,
Специальность CHAR(15),
Примечание VARCHAR);
INSERT INTO Студенты
SELECT * FROM stud_tmp;
Список контрольных вопросов:
1. Какой оператор применяется для вставки записи в таблицу? Опишите три формы этого оператора. Приведите примеры.
2. Какие обстоятельства необходимо учитывать при добавлении записи в таблицу?
3. Кокой оператор используется для удаления записи из таблицы? Приведите пример.
4. Кокой оператор применяется для изменения значений столбцов таблицы? Приведите пример.
5. Опишите назначение, синтаксис и порядок выполнения оператора MATCH. Приведите пример.
6. Кокой оператор используется для создания таблицы? Приведите пример.
7. Перечислите основные ограничения для столбцов. Приведите подробное описание примера использования ограничений для столбцов.
8. Что такое «ограничение домена»? Приведите пример.
9. Перечислите основные ограничения для таблиц. Приведите подробное описание примера использования ограничений для таблицы.
10. Опишите понятие внешнего ключа. Какой оператор используется для управления внешним ключом? Приведите пример.
11. Кокой оператор используется для удаления таблицы? Приведите пример.
12. Опишите синтаксис и порядок выполнения операции добавления столбца. Приведите пример.
13. Опишите синтаксис и порядок выполнения операции удаления столбца. Приведите пример.
14. Опишите синтаксис и порядок выполнения операции изменения параметров столбца (типа, размера или ограничения). Приведите пример.
15. Опишите синтаксис и порядок выполнения операции переименования столбца. Приведите пример.
16. Опишите синтаксис и порядок выполнения операции переименования таблицы. Приведите пример.
17. Опишите, каким образом можно изменить первичный ключ данной таблицы.
Задачи для самостоятельного решения
Задача 1.
Пусть база данных содержит следующие три таблицы:
Студенты (ID_студента, Имя, Телефон, Адрес, ID_курса) - данные о студентах, в том числе и о курсах, которые они изучают;
|
Курсы (ID_курса, Наименование) - данные о курсах;
Преподаватели (ID__преподавателя, Имя, Телефон, Адрес, ID_курса) - данные о преподавателях, в том числе и о курсах, занятия по которым они проводят.
В таблице Студенты каждый студент может быть записан на несколько курсов. Аналогично, один и тот же преподаватель может проводить занятия по нескольким курсам. Таким образом, столбцы ID_курса в этих таблицах не обязаны содержать уникальные значения. В таблице Курсы, напротив, столбец ID_курса содержит только уникальные значения.
Сформулируйте SQL-выражения для создания указанных таблиц так, чтобы таблицы Студенты и преподаватели были связаны с таблицей курсы.
Задача 2.
Для базы данных, описанной в задаче 1, сформулируйте запрос, возвращающий таблицу, которая содержит:
-наименования курсов и имена преподавателей, которые проводят занятия по данным курсам;
- наименования курсов и имена студентов, которые изучают данные курсы;
- имена студентов и имена преподавателей, которые проводят занятия с данными студентами.
Задача 3.
Пусть в базе данных, описанной в задаче 1, имеется таблица Контакты (Имя, Адрес, Телефон, Примечания). Сформулируйте запрос, добавляющий в нее соответствующие данные из таблиц Студенты и Преподаватели. Решите эту же задачу, записывая при этом в Столбец Примечания слово 'Студент' или 'Преподаватель', в зависимости от того, из какой таблицы берутся данные для вставки в таблицу Контакты.
|
|
Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!