SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

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

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

Вы не зашли.

#1 02.02.2012 01:44:09

dadli
Завсегдатай
Зарегистрирован: 16.10.2011
Сообщений: 50

Партиционирование и UNIQUE КЕУ не хотят жить однавременно

CREATE TABLE wer(
id INT(7) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
PRIMARY KEY(id),
UNIQUE(name)
)
ENGINE = innodb

PARTITION BY RANGE(id) (
PARTITION p5_mde VALUES LESS THAN(5),
PARTITION p10_mde VALUES LESS THAN(10),
PARTITION p_bolo VALUES LESS THAN(MAXVALUE)
)

видает ошибку:
A UNIQUE INDEX must include all columns in the table's partitioning function
что мне сделать в етом случае что-то не понимаю

Неактивен

 

#2 02.02.2012 02:23:37

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Партиционирование и UNIQUE КЕУ не хотят жить однавременно

Неактивен

 

#3 02.02.2012 02:39:48

dadli
Завсегдатай
Зарегистрирован: 16.10.2011
Сообщений: 50

Re: Партиционирование и UNIQUE КЕУ не хотят жить однавременно

vasya

если перепишу мои запрос так:
UNIQUE(id,name)
(все осталное без озменении)
ето работает, но правилное ли такое решение ?

Неактивен

 

#4 02.02.2012 02:55:06

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Партиционирование и UNIQUE КЕУ не хотят жить однавременно

А зачем вам вообще был нужен изначально UNIQUE(name) ?

Неактивен

 

#5 02.02.2012 03:04:52

dadli
Завсегдатай
Зарегистрирован: 16.10.2011
Сообщений: 50

Re: Партиционирование и UNIQUE КЕУ не хотят жить однавременно

просто сеичас начал изучение в " Партиционирование"  просто тренируиюс, хотел создать таблицу где будит и праимари ключ, и уникални и будит ето таблица Партиционировани.

Неактивен

 

#6 02.02.2012 03:10:16

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Партиционирование и UNIQUE КЕУ не хотят жить однавременно

Тогда правильно.
Но если уникальный ключ вам нужен для поиска по имени, то UNIQUE(name,id)

Неактивен

 

#7 02.02.2012 03:20:44

dadli
Завсегдатай
Зарегистрирован: 16.10.2011
Сообщений: 50

Re: Партиционирование и UNIQUE КЕУ не хотят жить однавременно

а... разница между етими: UNIQUE(name,id) и UNIQUE(id,name) то есть место полажение столбца, есть какои нибыдь ? нужна болше читать, не знал об етом.

Неактивен

 

#8 02.02.2012 03:56:31

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Партиционирование и UNIQUE КЕУ не хотят жить однавременно

См FAQ пункт 5

Неактивен

 

#9 02.02.2012 18:16:35

dadli
Завсегдатай
Зарегистрирован: 16.10.2011
Сообщений: 50

Re: Партиционирование и UNIQUE КЕУ не хотят жить однавременно

спасибо балшое

Неактивен

 

Board footer

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