У меня везде валиться ошибка: Processes node: Duplicate entry '2147483647' for key 'PRIMARY'
Сайт написан на php, бд MYSQL
Сайт написан на php, бд MYSQL
03.05.2018 21:12:03
У меня везде валиться ошибка: Processes node: Duplicate entry '2147483647' for key 'PRIMARY'
Сайт написан на php, бд MYSQL |
|
|
03.05.2018 21:15:20
Дело в том что для первичного ключа использовалось поле с типом данных INT. И так получилось, что AUTO INCREMENT вышел за пределы числа 2147483647, максимального для INT . Решение простое использовать тип данных BIGINT (для него максимально 2^63-1).
Основная сложность только найти в какой бд и вкакой таблице данная проблема. |
|
|
03.05.2018 21:22:40
Про ошибку: #1062 — Duplicate entry ‘1’ for key ‘PRIMARY’
Обычно она возникает когда переносите данные с одного хостинга на другой (бд) И многие советуют: (Открываете базу данных в текстовом редакторе, и меняете все команды INSERT INTO на REPLACE INTO.) речь про дам, и следовательно все текущие данные просто перезапишутся. Но я рекомендую разобраться как вообще такое случилось, вот пример который хорошо это описывает: "Мне удалось решить эту проблему по другому. Я зашла в phpmyadmin и в таблице присвоила для id в «Дополнительно» значение «AUTO_INCREMENT» (поставила галочку в колонке A_I). После этого ошибка пропала. Причина была в том, что первая запись в таблице имела id = 1, а когда импортировала БД, то AUTO_INCREMENT не передался. Когда стала добавлять новую запись, то ей присвоился сначала id = 0; когда следующую, то id = 1, который уже существовал и возник конфликт. Возможно мой метод кому-то пригодится. Метод замены с INTO на REPLACE возможно и устраняет ошибку, но может привести к полной замены старых данных на новые (особенно когда их много и все скрыто в чужом коде)." |
|
|
23.08.2024 13:09:36
Ошибка актуальна.
ERROR: [1062] Duplicate entry '2147483647' for key 'PRIMARY' В нашем случае, в таблице "b_iblock_element_property", переполнился счётчик в Primary поле "ID". Строк в таблице было не так много, переполнился из-за фрагментации. Решение: в phpMyAdmin в этой таблице смена типа поля "ID" с INT на BIGINT. |
||||
|
||||