Команда DELETE
Общий вид команды:
DELETE FROM имя_таблицы
[WHERE условие_отбора_строк_для_удаления]
Например:
Удалить всех студентов с фамилией Иванов
DELETE FROM students
WHERE name_st=’Иванов’
Более подробно фраза WHERE будет рассмотрена в следуюшем разделе при изучении команды выборки.
Полностью очистить таблицу students
DELETE FROM students
Нельзя удалить строку родительской таблицы, если есть связанные строки в подчиненной таблице и действует правило обеспечения ссылочной целостности ON DELETE RESTRICT. В приведенных выше примерах при определении внешнего ключа cod_st в таблице marks (оценки) было определено правило ON DELETE CASCADE, поэтому вместе со студентами будут каскадом удалены и все их оценки. Последняя команда, таким образом, очистит сразу две таблицы – students и marks.
Зато команда
DELETE FROM subjects
не удалит ничего, если в таблице marks имеется хотя бы одна строка, поскольку при возникновении ошибки будут автоматически отклонены все изменения, сделанные этой командой. Если на момент выполнения этой команды таблица оценок была пуста, таблица предметов будет благополучно очищена.
Надо заметить, что для полной очистки таблицы существует более эффективная команда
Дата добавления: 2015-08-26; просмотров: 1196;