Обновление записи осуществляется командой UPDATE
UPDATE table_name SET field_name1='var1', field_name2='var2',... WHERE (выражение)
Данная команда для всех записей в таблице table_name, удовлетворяющих выражению выражение, устанавливает указанные поля field_nameN в значение varN.
Эту команду удобно применять, если не требуется обновлять не все поля какой-то записи, а нужно обновить только некоторые.
Допустим, у нас гостевая книга использует для хранения информации базу данных MySQL.
Таблица (с именем db_guest), содержащая данные об оставленных сообщениях, имеет следующую структуру:
id - поле содержит идентификационный уникальный номер записи;
name - поле содержит имя пользователя, оставившего сообщение;
mail - е-майл пользователя;
url - URL пользователя;
content - непосредственно, само сообщение.
Напишем сценарий (на PHP), который выводит всю базу данных оставленных сообщений и позволяет вносить изменения в оставленные сообщения:
Листинг файла guest_update.php
<html><head><title>Обновление записей гостевой книги.</title></head><body><?// Подключаемся к базе данныхmysql_connect("localhost", "root", "");mysql_select_db("test"); // Если мы уже нажимали кнопку изменения записиif(@$submit_update) { // Обновляем выбранную запись $sql="update db_guest set name='$name', mail='$mail', url='$url', content='$content' where (id='$update')"; mysql_query($sql);}; // Заносим в переменную <I>$result</I> всю базу оставленных сообщений$sql="select * from db_guest";$result=mysql_query($sql);// Узнаем кол-во записей в гостевой книге$rows=mysql_num_rows($result);echo "<table border=0 align=center>";echo "<tr><td align=center><B>Имя</B></td>";echo "<td align=center><B>Е-майл</B></td>";echo "<td align=center><B>URL</B></td>";echo "<td align=center><B>Сообщение</B></td>";echo "<td align=center><B>Изменить</B></td></tr>";for($i=0;$i<$rows;$i++) { // Устанавливаем курсор на соответствующую позицию mysql_data_seek($result,$i); // Записываем в ассоциативный массив <I>$arr_guest</I> // значения полей таблицы гостевой книги $arr_guest=mysql_fetch_array($result); echo "<form method=get action='guest_update.php'>"; echo "<input type=hidden name='update' value='".$arr_guest["id"]."'>"; echo "<tr>"; echo "<td><input type=text name='name' value='".$arr_guest["name"]."'></td>"; echo "<td><input type=text name='mail' value='".$arr_guest["mail"]."'></td>"; echo "<td><input type=text name='url' value='".$arr_guest["url"]."'></td>"; echo "<td><textarea name='content'>".$arr_guest["content"]."</textarea></td>"; echo "<td><input type=submit name='submit_update' value='Изменить'></td>"; echo "</tr>"; echo "</form>";};echo "</table>";echo "</form>";?></body></html>