2016-08-10 3 views
0

Я изучаю php и mysql, и я следую видеоуроку. Все было довольно легко, за исключением того, что я, наконец, столкнулся с ошибкой, в которой я не могу найти решение.База данных дублирования базы данных Mysql

У меня новая база данных с 6 столбцов:

При добавлении тестового пользователя, а затем просматривать пользователь, есть дубликаты.

Почему я получаю дубликаты? Как я могу это исправить? Как я могу предотвратить это?

Смотреть скриншоты:

https://postimg.org/image/6vpiejdob

https://postimg.org/image/jbm88a70b

К сожалению, забыл запрос:

INSERT INTO users (id, first_name, last_name, email_address, password, status) VALUES (NULL, 'test', 'test', '[email protected]', 'test', '1');

+0

Вам необходимо указать код, в который вы вставляете пользователя, как минимум – JDro04

+0

. Ваш db не применяет УНИКАЛЬНЫЕ противопоказания. Поиск уникальных ключей – Drew

ответ

1

Пользователи ALTER TABLE ADD UNIQUE INDEX (id, email_address);

затем укажите, что делать с ошибками.

INSERT IGNORE INTO users (id, email_address) VALUES (1, "[email protected]"), (1, "[email protected]");

вы могли бы сделать больше обработки ошибок, но это было бы хорошей идеей после учебника. Я бы обрезал таблицу пользователей перед ALTER TABLE, так как ее только ненужные данные

+0

Поскольку он использует NULL (для auto_increment), вероятно, было бы не очень эффективно включать id в любой уникальный ключ, отличный от основного. – Uueerdo

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