Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD.doc
Скачиваний:
9
Добавлен:
22.04.2019
Размер:
507.9 Кб
Скачать

Вставка множества записей

Вставка множества записей осуществляется посредством использования подзапроса внутри оператора INSERT:

INSERT INTO имя_таблицы оператор_SELECT;

В данном случае оператор SELECT формирует набор данных, который сразу же транслируется в указанную таблицу. В отличие от использования параметра VALUES в операторе INSERT, с помощью подзапроса можно за раз вставить любое количество записей. Пример использования команды приведен ниже:

 -- копирование всех имен дилеров из таблицы

-- DEALERS в таблицу MANAGERS

INSERT INTO MANAGERS(Man_id, Name)

SELECT managers_seq.Nextval, Name FROM Dealers;

Оператор изменения значений полей update

Оператор UPDATE используется для изменения существующих строк таблиц. Оператор UPDATE имеет следующий синтаксис:

 

UPDATE имя_таблицы SET поле1=значение1, [поле2=значение2, …]

[WHERE условие_фильтрации_строк];

 Параметр WHERE используется для отбора тех строк, в которых необходимо произвести изменения, описанные в параметре SET. Если параметр WHERE не будет указан, то изменению подвергнутся все строки указанной таблицы.

Иногда для составления условия отбора строк, в которых необходимо произвести какие-либо изменения, не хватает логических операторов. Для таких случаев синтаксис оператора UPDATE допускает использование подзапросов в параметре WHERE для формирования набора строк, которые предполагается подвергнуть изменению

Оператор удаления строк delete

Оператор DELETE используется для удаления существующих строк таблиц. Оператор DELETE имеет следующий синтаксис:

 DELETE FROM имя_таблицы

[WHERE условие_фильтрации_строк];

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

Синтаксис оператора DELETE допускает использование подзапросов в параметре WHERE для формирования набора строк, которые предполагается удалить

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

  1. Подмножество языка ddl: операторы create, alter, drop. Представления, их значение; обновляемые представления.

10.1. Подмножество языка ddl: операторы create, alter, drop Оператор create - создание таблицы.

Оператор CREATE служит для создания любого типа объектов, из которых состоит база данных, в том числе таблиц.

Синтаксис команды создания таблицы:

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

поле1 тип1 [ограничения],

[поле2 тип2 [ограничения],

…]);

Возможные ограничения в таблицах:

  • NOT NULL – значение атрибута должно быть определено (опция NOT NULL);

  • UNIQUE – значения атрибутов являются уникальными (уникальный ключ);

  • PRIMARY KEY – атрибут является первичным ключом (первичный ключ);

  • CHECK – определяет условие, которому должны удовлетворять значения атрибута (домен);

  • DEFAULT – присвоение значений «по умолчанию» для атрибутов.

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

Оператор ALTER

Оператор ALTER служит для изменения структуры любых объектов, из которых состоит база данных. В зависимости от типа объекта, изменяются и параметры команды ALTER. 

Добавление атрибута таблицы

Для добавления атрибута к таблице применяется следующий синтаксис:

 ALTER TABLE имя_таблицы ADD поле тип [ограничения];

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

Для удаления атрибута таблицы применяется следующий синтаксис:

 ALTER TABLE имя_таблицы DROP COLUMN поле;

Изменение типа атрибута, размера типа и наличия опции NOT NULL

Для изменения типа данных атрибута, размера типа данных или наличия опции NOT NULL используется следующие синтаксис:

 ALTER TABLE имя_таблицы MODIFY поле тип [ограничения];

 Например, для изменения размера типа данных атрибута D_id в таблице Dealers можно выполнить следующую команду:

 ALTER TABLE Dealers MODIFY D_id NUMBER(8) NOT NULL;

Создание первичного ключа

Для создания первичного ключа используется следующий синтаксис: 

ALTER TABLE имя_таблицы ADD CONSTRAINT имя_ограничения

PRIMARY KEY(список_полей); 

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

Создание уникального ключа

Для создания уникального ключа используется следующий синтаксис:

ALTER TABLE имя_таблицы ADD CONSTRAINT имя_ограничения

UNIQUE(список_полей);

Например, для создания уникального ключа в таблице Dealers, гарантирующего уникальность значений в атрибуте Name, можно выполнить следующую команду:

ALTER TABLE Dealers ADD CONSTRAINT Dealers_Name_uk

UNIQUE (Name);

Создание домена

Для создания домена используется следующий синтаксис:

 ALTER TABLE имя_таблицы ADD CONSTRAINT имя_ограничения

CHECK(условное_выражение);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]