|
|
|
| Вот такой вот вопрос. Например, нужно вставить запись в таблицу, но при этом проверить есть ли уже она или нет. Проверяется одно поле, назовем его name.
Запрос INSERT INTO table_name VALUES(....) WHERE name УСЛОВИЕ(не существ. в таблице)
Я понятно надеюсь выразился ? :-) | |
|
|
|
|
|
|
|
для: levsha
(26.09.2007 в 18:36)
| | А версия MySQL какая? Триггеры достпны? И какова структура таблицы? Нельзя использовать уникальные ключи? | |
|
|
|
|
|
|
|
для: cheops
(26.09.2007 в 22:01)
| | Например я хочу чтобы в БД не было одинаковых товаров. С помощью PHP я бы сделал
так:
$query = mysql_query("SELECT * FROM goods WHERE name_goods='название_товара'");
// Ну или подсчитал бы COUNT() не суть важно.
if ($query)
{
if (mysql_num_rows($query) == 0)
{
// Товара нет, можно добавлять.
}
}
А можно ли как-нибудь реализовать это в самом запросе, ведь как было написано в книге
"Самоучитель PHP5": "Не делайте средствами PHP то, что можно сделать в БД " :-) | |
|
|
|
|
|
|
|
для: levsha
(26.09.2007 в 22:14)
| | Можно сделать столбец name_goods уникальным индексом, тогда добавление записи с уже существующим товаром будет невозможно. | |
|
|
|