SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 20.02.2011 11:33:48

bigjoy
Участник
Зарегистрирован: 20.02.2011
Сообщений: 4

Помогите с Insert

Подскажите, как вставить в таблицу, только уникальные записи (тобышь, если данные существуют в базе, что бы они не записывались). если это важно, то использую PHP.
Знаю, есть свойство distinct, но оно для select, а для insert?
Спасибо)

Неактивен

 

#2 20.02.2011 11:39:38

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Помогите с Insert

Создайте уникальный индекс и используйте INSERT IGNORE.

Неактивен

 

#3 20.02.2011 11:46:07

bigjoy
Участник
Зарегистрирован: 20.02.2011
Сообщений: 4

Re: Помогите с Insert

спасибо. попытаюсь нарыть пример)

Неактивен

 

#4 20.02.2011 11:49:22

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2423

Re: Помогите с Insert

Если у Вас есть уникальный набор полей, то Вы можете создать на него ключ

ALTER TABLE `table_name` ADD UNIQUE (`column_1` , `column_2`, `column_3`);
И в этом случае при попытке вставить туда уже существующего набора column_1, column_2 и column_3 mysql не вставит эти данные и вернет ошибку.

И прочтите http://www.phpclub.ru/mysql/doc/insert.html, обратив особое внимание на
ON DUPLICATE KEY UPDATE

Отредактированно deadka (20.02.2011 11:50:08)


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#5 20.02.2011 11:57:16

bigjoy
Участник
Зарегистрирован: 20.02.2011
Сообщений: 4

Re: Помогите с Insert

спасибо

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson