Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Топовые новости
Новое

Delete: удаление данных из таблиц

Delete: удаление данных из таблицХотите верьте, хотите нет, но существует такое понятие, как “слишком много данных”. С приходом компьютеризированных баз данных человечество накопило петабайты информации. Инструкция DELETE позволяет очистить таблицы от информации, потребность в которой отпала. Когда строки сущности перестали соответствовать реалиям жизни, от них нужно избавляться. Сотрудники увольняются, клиенты перестают размещать заказы, а адреса доставки прекращают свое существование. На практике редко избавляются от информации подобным образом — чаще ее Назаметку просто резервируют. К примеру, при увольнении работника в компании продолжают хранить о нем историческую информацию. Когда клиент не проявляет активности долгое время, чаще всего его не удаляют из базы, а изменяют его состояние в таблице. Это связано с тем, что с клиентом в реляционной базе связана и другая информация, поэтому для поддержания целостности данных требуется удаление информации из множества связанных таблиц. Процесс удаления можно упростить, применив при создании таблицы параметр on delete cascade, однако такое решение не всегда соответствует бизнес-логике. Даже если в информации о клиенте отпала потребность, исторические сведения о совершенных им заказах будут полезны аналитикам. Иногда записи таблицы удаляют, если они были вставлены по ошибке. К примеру, сведения о заказчике могут быть по ошибке введены дважды. Такая ситуация типична в крупных компаниях, где вводом данных о заказах одновременно занимается множество клерков. Инструкция DELETE удаляет строки одной таблицы (напрямую или посредством обновляемого представления). Ее общий синтаксис следующий. Одна инструкция DELETE позволяет удалить строки только из одной таблицы, при этом состав удаляемых строк определяется в предложении WHERE. Если условию WHERE не соответствует ни одна строка таблицы, ничего удалено не будет, и при этом сообщение об ошибке не генерируется.