2013-08-05 1 views
0

Я использую запрос для добавления редактируемых профилей на основе исходной таблицы пользователей.MySQL INSERT INGORE SELECT странное поведение

Оригинал регистрации таблица имеет поля, идентификатор - имя - фамилия - имя пользователя - пароль - имэйл - подтверждение

Профиль имеет несколько больше настраиваемых полей, но те, я вставляя в таблицу профилей от пользователей table is, id - name - email.

INSERT IGNORE INTO profile(cid,display_name,display_email) 
SELECT id,name,email FROM users 

Это используется для работы в течение нескольких лет, но в последнее время я заметил, что таблица профилей превысила вставки профилей при регистрации пользователей. Когда я запускаю запрос в phpmyadmin, он просто говорит, что вставлено 0 строк.

Может кто-нибудь, пожалуйста, помогите мне разобраться, почему это происходит? Обновления MySQL, что я пропустил или что-то :(

+1

Какие уникальные индексы существуют в таблице 'profile'? –

+0

'PRIMARY id UNIQUE cid' –

+0

Попробуйте запустить только часть SELECT, посмотрите, есть ли какие-либо результаты. Также попробуйте запустить его без 'IGNORE', который должен сказать вам причину, по которой он не вставлен. – Vatev

ответ

0

решаемые проблемы.

Казалось бы мой хозяин по какой-то причине во время обновления изменил мое поле таблицы идентификатор в таблице профилей с определенным значением 0.

я редактировал структурированная и установить его в auto_increment. что послужило причиной запроса перестал добавлять новые значения.

Спасибо всем, что расспрашивал меня, он указал мне на проблемы и помогли решить эту проблему .

Смежные вопросы