Форум: "Базы";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];
ВнизMYSQL запрос с условием Найти похожие ветки
← →
malyar (2007-02-19 20:49) [0]подскажите
как будет выглядеть запрос на добавление записи в таблицу
тока в том случаее если такой записи еще не существует
пример:
в таблице из двух полей (F1 и F2) есть записи
F1 | F2
----------
n1 v1
n2 v2
n3 v3
нужно добавить новую запись тока тогда, когда
значение для поля F1 у новой записи еще нет в таблице.
Значения в полях не уникальны.
← →
Johnmen © (2007-02-19 21:36) [1]
> как будет выглядеть запрос на добавление записи в таблицутока
> в том случаее если такой записи еще не существует
Никак.
← →
palva © (2007-02-19 22:22) [2]Сделать поле F1 уникальным. Тогда при попытке добавления повторяющегося значения будет возникать ошибка, которую перехватывать и обрабатывать.
← →
sniknik © (2007-02-19 23:11) [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 уникальным. ...
раз у него значения поля уже неуникальны, поздно. либо с потерей данных.
← →
sniknik © (2007-02-19 23:14) [4]> в таблице должно быть хоть одно поле...
оговорился, не поле, запись. т.е. чтобы таблица не была пустой.
← →
newby (2007-02-21 15:27) [5]добавлю свои 2 копейки, может поможет :)
у mysql есть интересная опция IGNORE:
INSERT IGNORE INTO ...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c