Изменение таблиц и ограничений



Структуру созданной таблицы можно изменить с помощью команды ALTER TABLE. Эта команда позволяет добавлять столбцы, менять ширину столбцов, добавлять и удалять ограничения, а также разрешать и запрещать их действие.

Добавление столбца.

ALTER TABLE таблица

ADD (столбец тип_данных [ DEFAULT выражение] [ NOT NULL]

     [, столбец тип _данных ] …);

Пример:

ALTER TABLE groups

ADD (birthday DATE );

 

Изменение столбца

ALTER TABLE таблица

MODIFY (столбец тип _данных [DEFAULT выражение ] [NOT NULL]

     [, столбец тип_данных] …);

 

Добавление ограничений

ALTER TABLE таблица

ADD [ CONSTRAINT ограничение] тип (столбец);

 

Удаление ограничений

ALTER TABLE таблица

DROP PRIMARY KEY | UNIQUE (столбец)|

       CONSTRAINT ограничение [ CASCADE];

Если используется параметр CASCADE, то одновременно удаляются и все зависимые ограничения.

 

Разрешение и запрет ограничений.

С помощью команды ALTER TABLE с предложениями ENABLE и DISABLE можно разрешать и запрещать действия ограничений, не удаляя их.

ALTER TABLE таблица

DISABLE | ENABLE CONSTRAINT ограничение [CASCADE];

Удаление таблицы

DROP TABLE таблица [CASCADE CONSTRAINTS];

Если используется параметр CASCADE CONSTRAINTS, то удаляются и все зависимые ссылочные ограничения.

 

Переименование таблицы

RENAME old_name TO new_name;

Усечение таблицы.

TRUNCATE TABLE таблица;

Это команда для удаления всех строк таблицы и освобождения памяти, отведенной под таблицу. Командой DELETE (рассматриваемой далее) также можно удалить все строки таблицы, но она не освобождает память, отведенную под таблицу.

 

Обработка данных.

Язык манипулирования данными (DML) является сердцем SQL. Для каждого добавления, изменения или удаления данных из базы данных выполняется команда DML. Совокупность команд DML, результаты действия которых еще не стали постоянными, называется транзакцией.

Вставка строк в таблицу.

 

INSERT INTO таблица [(столбец [, столбец…])]

VALUES (значение [, значение …])

Пример:

INSERT INTO groups

VALUES (1,3091,’Д ’)

или

INSERT INTO groups(id,num_gr,form)

VALUES (1,3091,’Д’)

 

Обновление строк.

Существующие строки таблицы можно обновить командой UPDATE.

 

UPDATE таблица

SET столбец=значение[, столбец=значение]

[ WHERE условие]

 

условие задает строки, которые необходимо изменить, и может состоять из имен столбцов, выражений, констант, подзапросов и операторов сравнения.

 

Пример.

Изменение формы обучения у группы 3031.

UPDATE groups

SET form=’З ’

WHERE num_gr=’3091’

Удаление строк.

Существующие строки удаляются командой DELETE.

 

DELETE FROM таблица

[WHERE условие ]

 

Если предложение WHERE отсутствует, удаляются все строки таблицы.

 

Пример.

Удалить группу 3331 заочного обучения

 

DELETE FROM groups

WHERE num_gr=’3331’ and form=’З ’

Каждое изменение данных, выполненное в ходе транзакции, является временным до тех пор, пока транзакция не будет зафиксирована.

Все внесенные изменения фиксируются с помощью команды COMMIT, в результате чего измененные данные записываются в базу данных, предшествующее состояние данных теряется.

Все незафиксированные изменения отменяются командой ROLLBACK, в результате чего сделанные изменения теряются, восстанавливается прежнее состояние данных.

 

Пример (отмена случайного удаления всех строк таблицы)

 

DELETE FROM groups;

ROLLBACK;

DELETE FROM groups WHERE num_gr=’3331’ and form=’З ’;

COMMIT;

 

Команды CREATE TABLE, ALTER TABLE, DROP TABLE, RENAME, TRUNCATE относятся к командам описания данных (DDL). После выполнения каждой такой команды происходит автоматическая фиксация транзакции. Откат на уровне команды DDL невозможен, т.е. отменить ее результаты нельзя, поэтому пользоваться такими командами следует очень осторожно.

 

Требования к отчету.

Отчет по лабораторной работе должен содержать:

1) Цель работы

2) Описание создаваемых таблиц и ограничений к ним.

3) Примеры SQL-команд для создания таблиц, их редактирования и удаления.

4) 20 сложных запросов.

 

В ходе защиты лабораторной работы необходимо продемонстрировать созданные таблицы, а также умение создавать, редактировать, заполнять и т.д. таблицы различными способами (средствами интерфейса и SQL).


Дата добавления: 2018-10-26; просмотров: 112; Мы поможем в написании вашей работы!

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






Мы поможем в написании ваших работ!