Читайте также:
|
|
Для внесения изменений в уже созданные таблицы стандартом SQL предусмотрен оператор ALTER TABLE, предназначенный для выполнения следующих действий:
добавление в таблицу нового столбца;
удаление столбца из таблицы;
добавление в определение таблицы нового ограничения;
удаление из определения таблицы существующего ограничения;
задание для столбца значения по умолчанию;
отмена для столбца значения по умолчанию.
Оператор изменения таблицы имеет следующий обобщенный формат:
<изменение_таблицы>::=
ALTER TABLE имя_таблицы
[ADD [COLUMN]имя_столбца тип_данных
[ NOT NULL ][UNIQUE]
[DEFAULT <значение>][ CHECK (<условие_выбора>)]]
[DROP [COLUMN] имя_столбца [RESTRICT | CASCADE ]]
[ADD [CONSTRAINT [имя_ограничения]]
[{PRIMARY KEY (имя_столбца [,...n])
|[UNIQUE (имя_столбца [,...n])}
|[FOREIGN KEY (имя_столбца_внешнего_ключа [,...n])
REFERENCES имя_род_таблицы
[(имя_столбца_род_таблицы [,...n])],
[ MATCH {PARTIAL | FULL}
[ON UPDATE {CASCADE| SET NULL |
SET DEFAULT | NO ACTION}]
[ON DELETE {CASCADE| SET NULL |
SET DEFAULT | NO ACTION}]
|[CHECK(<условие_выбора>)][,...n]}]
[DROP CONSTRAINT имя_ограничения
[RESTRICT | CASCADE]]
[ALTER [COLUMN] SET DEFAULT <значение>]
[ALTER [COLUMN] DROP DEFAULT]
Здесь параметры имеют то же самое назначение, что и в определении оператора CREATE TABLE.
Удаление таблицы выполняется командой:
DROP TABLE имя_таблицы
Удалить можно любую таблицу, даже системную. К этому вопросу нужно подходить очень осторожно. Однако удалению не подлежат таблицы, если существуют объекты, ссылающиеся на них. К таким объектам относятся таблицы, связанные с удаляемой таблицей посредством внешнего ключа. Поэтому, прежде чем удалять родительскую таблицу, необходимо удалить либо ограничение внешнего ключа, либо дочерние таблицы. Если с таблицей связано хотя бы одно представление, то таблицу также удалить не удастся. Кроме того, связь с таблицей может быть установлена со стороны функций и процедур. Следовательно, перед удалением таблицы необходимо удалить все объекты базы данных, которые на нее ссылаются, либо изменить их таким образом, чтобы ссылок на удаляемую таблицу не было.
Продолжаем работать с таблицами
Запрос на добавление нескольких записей:
INSERT INTO назначение [IN внешняяБазаДанных] [(поле_1[, поле_2[,...]])]
SELECT [источник.]поле_1[, поле_2[,...]
FROM выражение
Запрос на добавление одной записи:
INSERT INTO назначение [(поле_1[, поле_2[,...]])]
VALUES (значение_1[, значение_2[,...])
назначение - Имя таблицы или запроса, в который добавляются записи.
внешняяБазаДанных – Путь к внешней базе данных. Более подробные сведения об этом аргументе можно найти в описании предложения IN.
источник – Имя таблицы или запроса, откуда копируются записи.
поле_1, поле_2 – Имена полей для добавления данных, если они следуют за аргументом назначение; имена полей, из которых берутся данные, если они следуют за аргументом источник.
выражение – Имена таблицы или таблиц, откуда вставляются данные. Это выражение может быть именем отдельной таблицы или результатом операции INNER JOIN, LEFT JOIN или RIGHT JOIN, а также сохраненным запросом.
значение_1, значение_2 – Значения, добавляемые в указанные поля новой записи. Каждое значение будет вставлено в поле, занимающее то же положение в списке: значение_1 вставляется в поле_1 в новой записи, значение_2 в поле_2 и т.д. Каждое значение текстового поля следует заключать в кавычки (' '); для разделения значений используйте запятые.
Запрос на обновление, который изменяет значения полей указанной таблицы на основе заданного условия отбора.
UPDATE таблица
SET новоеЗначение
WHERE условиеОтбора
таблица – Имя таблицы, данные в которой следует изменить.
новоеЗначение – Выражение, определяющее значение, которое должно быть вставлено в указанное поле обновленных записей.
условиеОтбора – Выражение, отбирающее записи, которые должны быть изменены. При выполнении этой инструкции будут изменены только записи, удовлетворяющие указанному условию.
Запрос на удаление записей
DELETE [таблица.*]
FROM таблица
WHERE условиеОтбора
таблица – Необязательное имя таблицы, из которой удаляются записи.
таблица – Имя таблицы, из которой удаляются записи.
условиеОтбора – Выражение, определяющее удаляемые записи.
Синтаксис:
CREATE TABLE таблица (поле_1 тип [(размер)]
[NOT NULL] [индекс_1] [, поле_2 тип [(размер)]
[NOT NULL] [индекс_2] [,...]] [, CONSTRAINT составнойИндекс [,...]])
Ниже перечислены аргументы инструкции CREATE TABLE:
Дата добавления: 2015-10-16; просмотров: 85 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Создание таблицы | | | Виды соединений таблиц |