Конспект лекций по дисциплине «Сетевые базы данных», страница 13

                        WHERE snum = 1001;

Команда DELETE имеет следующий синтаксис.

DELETE [ FROM ] таблица

   [ WHERE условие ]

Если в команде DELETE опустить фразу WHERE, то при таком простом варианте будут удалены все строки из таблицы. Следует отметить, что при этом сама таблица не будет удалена их базы данных, но она станет пустой. Пример удаления всех заказов из таблицы ORD показан ниже.

DELETE FROM ord

Для удаления строк, отвечающих заданному условию, в команду DELETE требуется включить фразу WHERE с условием удаления. Так, следующем примере удаляются заказы, сумма которых не превышает 100.

DELETE FROM ord WHERE amt <= 100;

3.2. Управление транзакциями

ТРАНЗАКЦИЯ - это логическая единица работы, составленная из одной или нескольких команд SQL. Транзакция - это атомарная единица; результаты всех команд SQL, составляющих транзакцию, должны быть либо все ПОДТВЕРЖДЕНЫ (применены к базе данных), либо все ОТМЕНЕНЫ. Транзакции должны состоять лишь из тех команд SQL, которые в совокупности осуществляют одно согласованное изменение данных.

Транзакция начинается с первой выполняемой команды SQL. Транзакция заканчивается, когда она либо подтверждается, либо отменяется, что может быть сделано явно (командами COMMIT или ROLLBACK) или неявно (когда выдается команда DDL).

3.2.1. Подтверждение транзакций

ПОДТВЕРЖДЕНИЕ транзакции означает объявление постоянными всех изменений, которые были выполнены командами SQL внутри этой транзакции.

Для подтверждения транзакции используйте команду COMMIT. Следующие предложения эквивалентны и подтверждают текущую транзакцию:

 COMMIT WORK;

 COMMIT;

3.2.2. Откат транзакций

ОТКАТ означает отмену всех изменений данных, которые были сделаны командами SQL в неподтвержденной транзакции.

Чтобы отменить всю, используйте команду ROLLBACK. Например, каждое из следующих предложений откатывает всю текущую транзакцию:

ROLLBACK WORK;

ROLLBACK;

3.3. Команды определения данных

Команды языка определения данных (Data Definition Language, DDL) определяют, создают и поддерживают объекты, а также уничтожают их, когда объекты больше не нужны.

3.3.1. Таблицы

Для создания таблиц используют команду CREATE TABLE, которая имеет следующий синтаксис:

CREATE TABLE имя_таблицы

(имя_столбца тип_данных  [DEAFAULT выражение] [ограничение_столбца] [,])

PRIMARY KEY

CONSTRAINT имя_ограничения AS  запрос

Простая форма команды CREATE TABLE задает имя таблицы, имена столбцов, а также типы и размеры данных для столбцов. Дополнительно можно определить ограничения целостности, параметры памяти и будет ли таблица входить в состав кластера.

Модификациятаблиц

ALTER TABLE mytab ADD col5 CHAR(5);

ALTER TABLE mytab MODIFY col2 VARCHAR2(200);

Столбцы не могут быть переименованы.

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

RENAME mytab TO tabnew;

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

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

DROP TABLE имя_таблицы;

3.3.2. Последовательности

Последовательность Oracle – это объект БД, который может генерировать последовательный список уникальных чисел для числовых столбцов таблиц базы данных.

Последовательность создается командой CREATE SEQUENCE, имеющей следующий синтаксис:

CREATE SEQUENCE имя_последовательности

[ INCREMENT BY integer ]

[ START WITH integer ]

[ MAXVALUE integer | NOMAXVALUE ]

[ MINVALUE integer | NOMINVALUE ]