ALTER TABLE имяТаблицы RENAME TO новоеИмяТаблицы ; — КиберПедия 

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

ALTER TABLE имяТаблицы RENAME TO новоеИмяТаблицы ;

2019-07-12 127
ALTER TABLE имяТаблицы RENAME TO новоеИмяТаблицы ; 0.00 из 5.00 0 оценок
Заказать работу

Изменение структуры таблицы является небезопасной операцией с точки зрения возможности потери данных. Если вы не вполне уверены, что получите требуемый результат, то лучше использовать резервное копирование данных, поступая следующим образом:

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, имеется таблица Контакты (Имя, Адрес, Телефон, Примечания). Сформулируйте запрос, добавляющий в нее соответствующие данные из таблиц Студенты и Преподаватели. Решите эту же задачу, записывая при этом в Столбец Примечания слово 'Студент' или 'Преподаватель', в зависимости от того, из какой таблицы берутся данные для вставки в таблицу Контакты.


Поделиться с друзьями:

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.01 с.