Шрифт:
Примеры
Удалить записи из таблицы CITY1 с кодами городов CITYCODE 7, 9.
Удалить из таблицы AUTO1 все автомобили BMW (MARK).
Удалить из таблицы AUTO1 все автомобили с датой выпуска больше 01.01.2017.
Завершите выполнение командой COMMIT для фиксации изменений.
Важные замечания
Данная команда может удалить записи только в одной заданной таблице.
Команда DELETE также должна завершаться инструкцией COMMIT для фиксации изменений в базе.
Следует помнить, что язык SQL в ORACLE поддерживает механизм транзакций, поэтому модификации данных, в том числе и операции удаления, чаще всего необходимо завершать командой СOMMIT или ROLLBACK.
COMMIT – для фиксации изменений;
ROLLBACK – для отката изменений.
Команда DELETE без инструкции WHERE очищает все строки в таблице, поэтому при использовании команды DELETE надо соблюдать предельную осторожность.
Вопросы учеников
Чем отличается команда DELETE от команды DROP?
Это совершенно разные команды. Я предлагаю повторить материал на эту тему и ответить на данный вопрос самостоятельно.
Как еще можно очистить таблицу?
Для этого есть специальный оператор TRUNCATE TABLE TABLENAME. При его выполнении происходит быстрая очистка всех записей таблицы. Мы еще будем изучать эту тему в следующих шагах.
Я пытаюсь удалить записи из некоторой таблицы, но возникает ошибка.
Вероятно, есть связанные записи в другой таблице по внешнему ключу. Сначала необходимо удалить записи в связанной таблице.
Контрольные вопросы и задания для самостоятельного выполнения
Шаг 18. Псевдонимы
Введение
В языке SQL есть такая синтаксическая конструкция, как псевдонимы.
С помощью псевдонимов мы можем большим или сложным наименованиям таблиц или колонок таблиц в запросе SQL присвоить более короткие, удобные и понятные нам псевдонимы (ALIAS).
Теория и практика
Псевдонимы для колонок, выводимых в запросе, задаются с помощью инструкции AS, псевдонимы же для таблиц указываются сразу же после имени таблицы.
Примеры
Вывести из таблицы MAN колонки «имя», «фамилия» и «возраст».
Для таблицы задать псевдоним m для колонки имени (FIRSTNAME), для колонки фамилии (LASTNAME) – Fml.
Рисунок 31. Демонстрация работы псевдонимов: запрос
Вывести из таблицы AUTO марку и цвет автомобиля.
• Для таблицы AUTO задать псевдоним AV;• для колонки «марка» задать псевдоним Mr;• для колонки «цвет» задать псевдоним CV.Вывести только автомобили с годом выпуска больше 01.01.2001.
Рисунок 32. Запрос к AUTO: псевдонимы
Обратите внимание, как формируется условие для при обращении к колонке типа DATE.
Важные замечания
Псевдонимы не могут повторяться в рамках одного запроса и подзапроса, то есть их имена должны быть уникальными.
Если мы задали псевдоним для таблицы, из которой SQL-запрос выбирает данные, то и в условии WHERE мы также должны использовать заданный псевдоним.
Вопросы учеников
Если мы используем псевдоним для таблицы и псевдонимы для колонок, должны ли мы обращаться к колонкам в инструкции WHERE по псевдонимам колонок?
Как ни странно, так делать нельзя. Вы должны указать именно настоящее имя колонки в этом случае.
Пример