Следует помнить, что язык 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 марку и цвет автомобиля.
Вывести только автомобили с годом выпуска больше 01.01.2001.
Рисунок 32. Запрос к AUTO: псевдонимы
Обратите внимание, как формируется условие для при обращении к колонке типа DATE.
Важные замечания
Псевдонимы не могут повторяться в рамках одного запроса и подзапроса, то есть их имена должны быть уникальными.
Если мы задали псевдоним для таблицы, из которой SQL-запрос выбирает данные, то и в условии WHERE мы также должны использовать заданный псевдоним.
Вопросы учеников
Если мы используем псевдоним для таблицы и псевдонимы для колонок, должны ли мы обращаться к колонкам в инструкции WHERE по псевдонимам колонок?
Как ни странно, так делать нельзя. Вы должны указать именно настоящее имя колонки в этом случае.
Можно ли нескольким выводимым колонкам запроса SQL задать псевдоним, а другим не задавать?
Конечно; вот пример такого запроса:
Контрольные вопросы и задания для самостоятельного выполнения
1. Найдите ошибку в следующем запросе:
2. Найдите ошибку в еще одном запросе:
3. Выведите с помощью запроса SQL наименование города из таблицы CITY. Для таблицы задайте псевдоним GR, для колонки «наименования» задайте псевдоним NM.
4. Выведите количество жителей в городе Москва, для колонки PEOPLES задайте псевдоним CLZ, для таблицы задать псевдоним MS.
Шаг 19. BETWEEN
Введение
В языке SQL есть специальная конструкция, которая позволяет работать с интервалами – своего рода фильтр, позволяющий выбирать данные, соответствующие заданному интервалу значений. Этот оператор называется BETWEEN и может использоваться как в выборке SELECT, так и в операциях модификации и удаления данных (UPDATE, DELETE).