Кроме добавления записей в таблицу, их можно удалять с помощью команды DELETE, синтаксис которой выглядит следующим образом: DELETE FROM имя- таблицы
Листинг 4.17.
mysql> DELETE FROM members;
Query OK, 0 row affected (0.06 sec)
Как видим, по команде DELETE из таблицы members будут удалены все записи.
Есть также возможность удалить определенное подмножество строк из таблицы. Для этого используется предложение WHERE. Следующий листинг демонстрирует удаление только тех записей, которые имеют идентификатор члена 16.
Листинг 4.18.
mysql> DELETE FROM members WHERE member_id = 16;
Query OK, 1 row affected (0.06 sec)
И, наконец, существует команда UPDATE, специально предназначенная для того, чтобы помочь изменить существующие записи в таблице. Она имеет следующий вид: UPDATE имя- таблицы SET имя- поля = новое- значение
Эта команда действует на все значения поля имя-поля, присваивая им новое значение <новое-значение>. Для того чтобы внести изменение только в одно поле, как и в случае с оператором DELETE, достаточно воспользоваться предложением WHERE.
Вооружившись этим знанием, можно изменить электронный адрес только для Джона
До (John Doe).
Листинг 4.19.
mysql> UPDATE members SET email = 'john@somewhere.com' WHERE MEMBER_ID
= 1;
Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 
Можно также изменить сразу несколько полей, разделив их запятыми.
Листинг 4.20.
mysql> UPDATE members SET email = 'john@somewhere.com',
lname = 'Doe The First' WHERE MEMBER_ID = 1;
Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0
Заметим, что MySQL предоставляет информацию как о количестве выбранных запросом строк, так и о количестве строк, измененных этим запросом.
Выполнение запросов
Теперь, когда данные находятся в базе данных, можно приступить к их обработке. С помощью операторов SELECT MySQL позволяет делать выборки определенных "срезов" данных из базы данных.
Простейшей формой оператора SELECT является запрос на выборку всех данных из определенной таблицы.
Удаление и модификация записей
Символ звездочки "*" указывает на то, что выводятся все столбцы таблицы. Если вместо этого вам требуется иметь в результирующем наборе только какой-либо один или несколько столбцов, в операторе SELECT можно перечислить только имена необходимых столбцов.
Удаление и модификация записей
В большинстве случаев предпочтительнее указывать имена полей, которые вы хотите видеть в результирующем наборе, явным образом. Это позволяет создаваемому приложению "пережить" структурные изменения, которые может перетерпеть таблица, и обычно такой запрос работает эффективнее, т.к. при этом в результирующий набор попадают только нужные поля.
Ограничить попадание повторяющихся записей в результирующий набор можно с помощью ключевого слова DISTINCT. Например, следующий запрос позволит отображать записи члена с фамилией "Doe" не более одного раза.
Удаление и модификация записей
Конечно, целью разбиения данных на сроки и столбцы является получение конкретного результирующего набора. Зачастую это достигается с помощью предложения WHERE в операторе SELECT (достаточно вспомнить использование этого предложения в операторах UPDATE и DELETE в предыдущем разделе). Таким образом определяется конкретный критерий для результирующего набора. Записи, не удовлетворяющие указанному критерию, не попадают в результирующий набор.
Например, предположим, что нам нужно увидеть список всех членов с фамилией
"Doe".
Удаление и модификация записей
Или предположим, что нас интересует список всех фильмов кинорежиссера Джорджа Лукаса.
Удаление и модификация записей
(Да, я знаю, что набор является неполным. Об остальных фильмах можно спросить у Санта-Клауса... )