Общие > Базы данных

insert без дупликатов

(1/2) > >>

golden-den:
CREATE TABLE `catalog_data` (
  `id` int(11) NOT NULL auto_increment,
  `cid` int(16) default NULL,
  `title` text
  PRIMARY KEY  (`id`)
) TYPE=MyISAM


Как добавить в эту таблицу 1 строку, только так чтобы не было дупликатов со значениями \'cid\'.

Делать сначала один запрос,  в которм проверять наличие строки, а заетм, если еще нет такой строки, то вторым запросом добавлять?
Можно ли одним запросом сделать?

fidget:
создать unique key(cid) и использовать INSERT IGNORE или REPLACE

hanslinger:
fidget
гм
ну, дупликатов точно не будет :-)
но подозреваю, что цели преследуются несколько иные :)

fidget:
hanslinger, у него цель сделать добавление одним запросом так чтобы не было дубликатов.

golden-den:
fidget
Да. хочу одним запросом добавить все записи (а их бывает много), так чтобы новые добавились, а старые сделали update

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии