Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/26: Рейтинг темы: голосов - 26, средняя оценка - 4.69
15 / 15 / 10
Регистрация: 23.03.2013
Сообщений: 101
1

Составной unique index

08.05.2014, 03:49. Показов 4661. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, прошу помощи у специалистов mysql.

У меня есть таблица products_prices
в таблице три столбца product_id price_id value
мне нужен уникальный индекс по полям product_id + price_id
допустим чтобы 1 1 0 и 1 1 1 было дубликатом, а 1 2 0 и 1 1 0 небыло
Я пробывал
SQL
1
ALTER TABLE `products_prices` ADD UNIQUE( `product_id`, `price_id`);
но при вставке данных в таблицу уникальный индекс считается по каждому полю почему то

П.С
Если я буду иметь уникальный индекс по двум полям смогу ли я использовать запрос вроде этого для вставки/обновления
MySQL
1
2
INSERT INTO products_prices (product_id, price_id, value) VALUES (:product_id, :price_id, :value)
ON DUPLICATE KEY UPDATE value = VALUES(value)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.05.2014, 03:49
Ответы с готовыми решениями:

PRIMARY, UNIQUE and INDEX
Коллеги, подскажите, где бы почитать адекватную статью с примерами, в каких случаях какие индексы...

Три файла,(index.coo, index.doc, index.lex) а что за БД не знаю
Мне дали файловую БД(о-очень много файлов) и три файла: index.coo, index.doc и index.lex. ни doc,...

Unique records
Доброго утра всем. Как выбрать из таблицы только уникальные записи? Т.е. неповторяющиеся значения....

non unique select
мне нужно вытащить все записи где ид используется не только в одной записи (не уникальный) за...

2
363 / 334 / 38
Регистрация: 29.03.2011
Сообщений: 838
08.05.2014, 23:41 2
kolesnikov, 1. У вас product_id случаем не primary key?
2. Если вы хотели добиться, чтобы value не обновлялся, то есть INSERT IGNORE. Если всё же наоборот - то REPLACE.
0
15 / 15 / 10
Регистрация: 23.03.2013
Сообщений: 101
15.05.2014, 01:47  [ТС] 3
Создал снова таблицу, способом что писал выше добавил ключ и все заработало. Спасибо за REPLACE http://phpclub.ru/mysql/doc/replace.html
0
15.05.2014, 01:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2014, 01:47
Помогаю со студенческими работами здесь

Unique в MySQL
Здравствуйте! Пишу вам с таким вопросом, форумчане, у меня есть таблица, состоящая из полей: ...

Unique учитывая 2 columns
Доброго времени суток. Есть таблица CREATE TABLE spr_avto_model( id INT(11) NOT NULL...

Unique key и null
есть индекс UNIQUE KEY `mnuIdx` (`pId`,`routeItem`), без проблем записал в таблицу две записи с...

Создание таблицы с несколькими UNIQUE
CREATE TABLE "НомерАбонент"( "номер" INTEGER NOT NULL, "id_Абонента" INTEGER NOT NULL,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru