|
|
|
| Помогите плиз срочно :-( разрулить вот это:
Ошибка
SQL-запрос:
ALTER TABLE users DROP lastvisit
Ответ MySQL: Документация
#1062 - Duplicate entry '^ED`A~N`A`O'O"Ess' for key 2
Есть уникальный индекс по полям login и password. Видимо, как я понимаю, прошли одинаковые логины (уж не знаю как) :-( Как быть и найти таковые? ( Или может проблема еще в чем-то? | |
|
|
|
|
|
|
|
для: Skyonex_
(22.08.2006 в 20:26)
| | потому что уникальный индекс имеет смысл только по полю логин. Но никак не по password
Искать
SELECT id, login, cnt FROM users JOIN
(SELECT login, count(id) as cnt
GROUP by login
HAVING cnt > 1) as t1 ON users.login =t1.login
|
и удалять.
Ну... или переименовывать. | |
|
|
|
|
|
|
|
для: Trianon
(22.08.2006 в 20:34)
| | Увы времени сейчас быстро разобраться нет. Какая-то ошибка в Вашем коде :-( Не берет. А если индекс порубить? И потом его построить сугубо по login? А не по login|password? | |
|
|
|
|
|
|
|
для: Skyonex_
(22.08.2006 в 20:26)
| | Хм... а какова структура таблицы? Выполните пожалуйста оператор
| |
|
|
|
|
|
|
|
для: cheops
(22.08.2006 в 20:35)
| | create table users(
id int(11) not null,
login varchar(16),
password varchar(16),
....
Primary key (id),
UNIQUE KEY login_idx (login,password)
)
Примерно так. | |
|
|
|
|
|
|
|
для: cheops
(22.08.2006 в 20:35)
| | В общем удалил уникальный индекс. Пытаюсь теперь его построить по полю Login. Ошибка duplicate entry. Подскажите, каким запросом можно найти дупы? Выше приведенный не работает. Пока сам попробую поколдовать. | |
|
|
|
|
|
|
|
для: Skyonex_
(22.08.2006 в 21:10)
| | наверное из-за того, что я FROM users забыл во вложенном селекте.
SELECT id, login, cnt FROM users JOIN
(SELECT login, count(id) as cnt FROM users
GROUP by login HAVING cnt > 1) as t1 ON users.login =t1.login
|
| |
|
|
|
|
|
|
|
для: Trianon
(22.08.2006 в 21:31)
| | Да вроде подставлял, все равно не пошло (((
Более топорным возможно вариантом выкрутился:
SELECT id,login, COUNT(*) as cnt FROM users GROUP BY login order by cnt DESC | |
|
|
|
|
|
|
|
для: Skyonex_
(22.08.2006 в 20:26)
| | Всем спасибо. Вырулил. | |
|
|
|