MySQL INSERT IGNORE INTO продолжает добавлять дубликаты записей
Вот конкретная область, с которой у меня возникают проблемы
mysql_query("INSERT IGNORE INTO storeip (ip) VALUES ('$ip')");
при тестировании это продолжает добавлять ту же самую запись в таблицу, даже если я установил IGNORE INTO. Я только начал изучать PHP и MySQL, поэтому любая помощь будет принята с благодарностью.
Спасибо
3 ответа
Решение
Похоже, у вас нет UNIQUE INDEX
в столбце IP. Для того чтобы INSERT IGNORE работал должным образом, это необходимо. Попробуй это;
ALTER TABLE ip ADD UNIQUE (ip)
Чтобы удалить дубликаты уже, вы можете запустить это.
ALTER IGNORE TABLE ip ADD UNIQUE (ip)
Почему бы и нет? игнорировать, просто игнорирует ошибки. Сделайте IP уникальным.
alter table storip add unique (ip);
Если IP - единственное поле в таблице, просто сделайте его первичным ключом, и дубликатов не будет
alter table storeip add primary key (ip);