Здесь курят мануал.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Пыха переехала на новый сервер, ура!

Краснодарское время: 25 Май, 2012, 04:49:36

Страниц: [1]
Печать
Автор Тема: Mysql, комбинированный UNIQUE индекс и INSERT .. ON DUPLICATE KEY UPDATE  (Прочитано 477 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Strate    ↓ 
11 Октябрь, 2011, 02:09:06
НЕ ХУЕТА! ХУЕТА!

Карма: 1
Сообщений: 12
Сила слова: 8.33

Привет всем!
 
Есть таблица, которая содержит в себе:
 
id: BIGINT, auto_increment, PRIMARY KEY;
col1: VARCHAR(50) utf8_unicode_ci;
col2: DATETIME
.. другие колонки
 
и индекс UNIQUE на колонках col1 и col2.
 
Делаю запрос:
 
INSERT INTO table SET col1='123', col2='2011-01-01 00:00:00' ON DULPLICATE KEY UPDATE `другая_колонка`='значение_другой_колонки';
 
И всё бы хорошо, ON DUPLICATE KEY отрабатывает, НО! Иногда вылезают в базе дубликаты. То есть смотришь phpMyAdmin-ом на col1 и col2 - значения идентичные абсолютно, но каким то образом mysql считает что они всё таки разные. В чём подводный камень?
 
p.s.: col1 имеет такой формат: две русские буквы + цифры. Может проблема в кодировке? Тогда почему не всегда проявляется?
Записан
Faster    ↓ 
11 Октябрь, 2011, 05:44:13 , спустя 3 часа 35 минут 7 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: 10
Сообщений: 954
Сила слова: 1.05

а utf8_unicode_ci сменить на utf8_general_ci
Записан

воспитываю дочь. С домами и деревьями  - не приставать.
Strate    ↓ 
11 Октябрь, 2011, 07:01:32 , спустя 1 час 17 минут 19 секунд
НЕ ХУЕТА! ХУЕТА!

Карма: 1
Сообщений: 12
Сила слова: 8.33

Кароче ребят,  сам ступил. В запрос иногда влезал символ "\r". Есессно phpMyAdmin его никак не отображал.
Записан
Страниц: [1]
Печать
 

Перейти в:  

Этот топик скрыли: adw0rd