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

Инструкции на изменение данных Инструкция: delete

Инструкция DELETE позволяет создать запрос на удаление записей из одной или нескольких таблиц.

Синтаксис:

DELETE

FROM имя таблицы

WHERE условие отбора;

Пример:

D

Удалить все записи в таблице «Товар»,

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

ELETE

FROM Товар

WHERE [Дата Годность] < Date();

Примечание1: Если условие отбора (WHERE …) не задано, то удаляются все записи из таблицы.

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

Внимание: Удаленные записи не подлежат восстановлению. Поэтому перед удалением можно с помощью конструкции SELECT убедится в правильности отбора данных для удаления.

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

Студенты Ведомость Дисциплины

П_Ключ_С

Фамилия

Группа

1

БАЖАНОВА

1

2

КОВАЛЕНКО

1

3

ЛАПИНА

5

4

СМОЛИК

1

5

ГОРБУНОВА

2

П_Ключ_П

Предмет

1

История

2

Информатика

3

Эконометрика

В_Ключ_С

В_Ключ_П

Оценка

1

1

5

1

2

2

1

3

4

2

1

4

2

2

2

2

3

2

3

1

4

3

2

5

3

3

4

4

1

5

4

2

5

4

3

5

5

1

4

5

2

4

5

3

5

Запрос: Из БД удалить студентов, получивших в сессии две и более неудовлетворительные оценки.

DELETE FROM Студенты WHERE П_Ключ_С IN (SELECT В_Ключ_С

FROM Ведомость

WHERE Оценка=2

GROUP BY В_Ключ_С

HAVING COUNT (Оценка) >1)

Инструкция update

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

Синтаксис

UPDATE Таблица     SET поле1 = Значение1, поле2 = Значение2,…     WHERE условие Отбора;

Дополнительные сведения

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

Одновременно можно изменить значения нескольких полей.

UPDATE Студенты INNER JOIN Ведомость ON Студенты.Ключ_Студ = Ведомость.Код_студ

SET Балл = Балл+10

WHERE Группа=3;

UPDATE Ведомость

SET Балл = Балл+10

WHERE В_Ключ_Ст =ANY (SELECT П_Ключ_Ст FROM Студенты WHERE Группа=3)

Т

КодТовара

Товар

Цена

1

Кока-кола

50

2

Пиво

60

3

Торт

350

4

Фанта

40

5

Шампанское

150

6

Морс

100

7

Сапоги

3000

8

Валенки

5000

9

Кефир

20

Адрес

КодТовара

ЦенаЗаказа

Париж

6

100

Рим

3

350

Лондон

2

60

Париж

5

150

Париж

8

5000

Париж

1

50

Рим

8

5000

Лондон

9

20

овары Заказано

Пример: Для Парижа, на Товар – «Валенки», уменьшить цену на 10%

Frame240

Frame241

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