![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
MYSQL запрос с условием [D7, MySQL]
malyar © (2007-02-19 20:49:00)подскажите
как будет выглядеть запрос на добавление записи в таблицу
тока в том случаее если такой записи еще не существует
пример:
в таблице из двух полей (F1 и F2) есть записи
F1 | F2
----------
n1 v1
n2 v2
n3 v3
нужно добавить новую запись тока тогда, когда
значение для поля F1 у новой записи еще нет в таблице.
Значения в полях не уникальны.
newby (2007-02-21 15:27:00) [1]добавлю свои 2 копейки, может поможет :)
у mysql есть интересная опция IGNORE:
INSERT IGNORE INTO ...
sniknik (2007-02-19 23:14:00) [2]> в таблице должно быть хоть одно поле...
оговорился, не поле, запись. т.е. чтобы таблица не была пустой.
sniknik (2007-02-19 23:11:00) [3]для access (не позволяет пакеты комманд. MySQL тоже?) это могло бы выглядеть так
INSERT INTO FF (F1,F2)
SELECT TOP 1 'n4' AS F1,'v4' AS F2 FROM FF WHERE (SELECT TOP 1 true FROM FF WHERE F1='n4') IS NULL
тут только одно ограничение, в таблице должно быть хоть одно поле... или использовать другую таблицу подстановки ту где хотя бы одно гарантированно есть (проверки естественно оставить на основной).
вот как это для MySQL переделать... х.з. ;(
palva © (19.02.07 22:22) [2]
> Сделать поле F1 уникальным. ...
раз у него значения поля уже неуникальны, поздно. либо с потерей данных.
palva (2007-02-19 22:22:00) [4]Сделать поле F1 уникальным. Тогда при попытке добавления повторяющегося значения будет возникать ошибка, которую перехватывать и обрабатывать.
Johnmen (2007-02-19 21:36:00) [5]
> как будет выглядеть запрос на добавление записи в таблицутока
> в том случаее если такой записи еще не существует
Никак.