|
|
|
| Здравствуйте,
Можно ли сделать так чтоб если я например вёл "Учебник PHP" и добовляю в базу и при этом у меня в базе уже есть "Учебник PHP" чтоб он просто обновлялся?
Буду очень благодарен... | |
|
|
|
|
|
|
|
для: Gnusmas
(18.04.2006 в 12:51)
| | Немного злобный способ:
<?
$text="Учебник PHP";
$data="какие-то даныне";
if (!mysql_query("UPDATE table SET pole='$data' WHERE text LIKE '$text'"))
mysql_query("INSERT INTO table VALUES($data, $text)");
|
Если такой записи не существует, то она будет добавлена, а если существует - обновлена. | |
|
|
|
|
автор: cheops (из кафе) (18.04.2006 в 13:40) |
|
|
для: Loki
(18.04.2006 в 13:32)
| | Помоему можно сократить, использовав оператор REPLACE - он как раз либо вставляет, либо обновляет запись - только синтаксис уточнить нужно (у меня сейчас под рукой мануала нет). | |
|
|
|
|
|
|
|
для: cheops (из кафе)
(18.04.2006 в 13:40)
| | C replace есть подводный камень:
Оператор REPLACE работает точно так же, как INSERT, за исключением того, что если старая запись в данной таблице имеет то же значение индекса UNIQUE или PRIMARY KEY, что и новая, то старая запись перед занесением новой будет удалена.
|
| |
|
|
|
|
автор: cheops (из кафе) (18.04.2006 в 13:48) |
|
|
для: Loki
(18.04.2006 в 13:44)
| | Да я его тоже не долюбливаю - не очень удобный оператор... | |
|
|
|
|
|
|
|
для: cheops (из кафе)
(18.04.2006 в 13:48)
| | Loki, мне твой вариант и нужен!
Только вот я незнаю как в мой скрипт вмазаьт(
Может есть у кого ни буть такой же вариант только попроще? | |
|
|
|