Уникальный индекс - на серваке нормально... на локалхосте - не дает....

Статус
В этой теме нельзя размещать новые ответы.

Сенсей

Новичок
Уникальный индекс - на серваке нормально... на локалхосте - не дает....

На серваке все работает прекрасно. Сделал бэкап таблицы users

щас на локалке зочу установаить... так вот... УНИКАЛЬНЫЙ индекс user_login почему то решает у меня на локалке что

зайчик и ЗаЙЧиК - это одно и тоже
а так же что ~%Sanya%~ это тоже что и sanya

Лёха = ЛЁХА

и т.д


Пришлось убрать уникальность у поля что бы хоть как то установить таблицу...
----

Почему так происходит? Индекс с самого начала был уникальным... почему на серваке все нормально.. и дома вот такие вот глюки?

Вот данные таблицы (лишнее убрал)

CREATE TABLE `users` (
`user_id` int(10) NOT NULL auto_increment,
`user_login` varchar(255) NOT NULL default '',
PRIMARY KEY (`user_id`),
UNIQUE KEY `user_login` (`user_login`),
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=25726 ;
 

WP

^_^
Сравнение поставь bin и не парься) cp1251_bin например

-~{}~ 19.01.07 04:16:

Сравнение поставь bin и не парься) cp1251_bin например
 

Сенсей

Новичок
Popoff
Чем мне жто поможет?



WP
Не помогает... уже и bin просто пробовал.. и cp1251_bin и latin1 bin
Сначало только для поля.. потом для всей таблицы....

Я же данные уже засунул в базу... когда уникальность индекса убрал...

Вот с Collation играю как ты сказал.. все ранво не дает сделать индекс уникальным... пишет сволоч :(

SQL-query:

ALTER TABLE `portal_users` DROP INDEX `user_login` ,
ADD UNIQUE `user_login` ( `user_login` )

MySQL said:
#1062 - Duplicate entry '?????' for key 2

:(
 

Сенсей

Новичок
Popoff
Да... там так и написано что tinyblob отличается от varchar только тем что tinyblob чувствителен к регистру...

Но это видимо не мешает phpmyadmin-у и еще 3 программам работы с мускулом кричать мне что невозможно создать уникальный индекс потому что в таблице есть записи где данные поля не уникальны

:(
 

Popoff

popoff.donetsk.ua
если замена на tinyblob не помогает, значит в базе есть абсолютно одинаковые значения и учёт регистра тут не причём.
 

Сенсей

Новичок
Popoff
Гы... последняя фраза навела на мысль :)
Оказывается при бэкапе таблицы с сервера появилис записи с user_login='????'

А когда мне выдовало ошибку #1062 - Duplicate entry '?????' for key 2 я думал что ???? это символы которые просто не может программа отобразить =))

Сейчас взял удалил уникальный индекс.. залил таблицу.. удалил пару записей (благо из 20k иих было всего 5) с user_login='????' и изменил collation на cp1251_bin

Создал уникальный индекс - все тип топ стало. Я в шоке Ж)
Все спосибо :)
 

Сенсей

Новичок
Wicked
Не в хумор не надо.. ибо кроме '????' действительно была проблема из за того что ЖЕНЯ и ЖеНя мускул выдавал за одно...

Поменял на cp1251_bin и все пошло нормально...
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху