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

1) Команды управления данными - insert, update, delete

DML – управления данными. Вставка строк данных – INSERT.

INSERT [ INTO] <имя базовой или временной таблицы> [(список полей)]

VALUES (список значений)| или <запрос>;

В отсутствующие поля значения вводятся по – умолчанию DEFAULT или NULL.

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

В командах INSERT можно использовать подзапросы.

Удаление данных – DELETE.

DELETE [FROM] <имя таблицы>[< условия>] ;

Эта команда осуществляет удаление строк-записей из указанной таблицы.

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

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

В команде DELETE допускаются соотнесенные подзапросы.

Изменение существующих данных в таблице – UPDATE.

UPDATE <имя таблицы> SET (список элементов: имя столбца ={выражение| DEFAULT| NULL} ) [<условия>];

В предложении SET могут использоваться выражения в списке того поля, которое необходимо изменить. ( В INSERT в списке VALUES выражения не допускаются.!!!)

!!! 1)Нельзя модифицировать несколько таблиц сразу.

2) Нельзя использовать префикс в именах полей.

В качестве значений списка SET могут использоваться значения NULL.

Мощным средством является использование подзапросов в команде UPDATE. При этом необходимо соблюдение следующих правил:

1) в предложении FROM любого подзапроса нельзя модифицировать таблицу, на которую ссылается основная команда;

2) может возникнуть проблема дублирования строк, полученных в результате вложенного подзапроса;

(в таблице могут быть заданы ограничения по уникальности, это выясняется с использованием предложения EXISTS )

2) Особенности применения команд insert, update, delete к представлениям

Представление VIEW – это именованная виртуальная таблица, содержание которой выбирается из других таблиц с помощью запросов.

При изменении значений в таблицах автоматически меняются значения представления.

Наличие имени у такой таблицы позволяет пользователю выполнять с ней операции аналогичные операциям с базовыми таблицами.

Рассмотрим таблицы, относящиеся к базовым, т.е. таким, которые содержат данные и постоянно находятся на устройствах хранения информации. Представления по сравнению с ними являются более гибкими средствами. Когда СУБД отыскивает в команде ссылку на представление, она отыскивает его определение, хранящееся в БД.

После этого происходит преобразование пользовательской команды в её эквивалент с учетом запроса. У пользователя возникает впечатление, что он работает с настоящей реально существующей таблицей.

В SQL существует понятие групповых представлений, т.е. имеющих предложение GROUP BY или основанных на других групповых представлениях.

Представления могут основываться на двух и более таблицах.

Существуют ограничения на модификацию представлений.

При создании представлений можно часть информации скрыть.

Для удаления представлений используется команда DROP VIEW <Name of view>;

  • Для удаления представления не требуется удалять все данные, потому что реально они в нем не содержатся.

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

Различия между модифицируемым представлением и представлением только для чтения существуют:

Первое - работает как базовое, является в основном средством скрытия части информации, средством защиты;

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