Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 11497|Odpowiedź: 0

[Źródło] mysql #1062 – Duplicate entry '1' for key 'PRIMARY'

[Skopiuj link]
Opublikowano 15.11.2017 13:22:06 | | |

Ostatnio przeglądałem VPS i właśnie natknąłem się na moment, gdy importowałem bazę danych w trakcie przenoszenia WordPressa. Spotkałem

#1062 – Podwójny wpis '1' dla kluczowego 'PRIMARY'

Wtedy się spieszyłem, usunąłem wszystkie oryginalne dane i nie miałem wyboru i musiałem poprosić wszechmocnego Baidu. Szukałem przez większość dnia i w końcu go znalazłem. Podekscytowany, od razu przetestuj, O(∩_∩)O haha~ Sukces.

Teraz dołączam rozwiązanie: wystarczy wyczyścić oryginalne stare dane i je zaimportować.

Nie rozumiem zasady, więc pokaż to i przekonaj się sam. Tak czy inaczej, można osiągnąć cel.

"Wskazówka #1062 – Zduplikuj wpis '1' dla klucza 'PRIMARY', później dowiedziałem się, że ostatni raz przekroczenie limitu zostało częściowo zaimportowane, a id jest kluczem głównym, nie może być tym samym, więc nie zadziała, usuń wszystkie stare dane i możesz przekierować."

Chciałbym również podziękować blogerowi za opublikowanie rozwiązania. W przeciwnym razie będę miał kłopoty."

Oryginał

Problem, z którym napotykamy dziś, jest bardzo prosty, ale też bardzo powszechny, i tutaj go zanotuję:
Importuj dane z jednej maszyny na drugą, więc jest za dużo rekordów, na początku nie zwracałem uwagi, przekroczyłem limit phpmyadmin, komunikat był błędny, ręcznie podzieliłem plik na kilka małych plików, ale potem pojawił się komunikat #1062 - Zduplikowany wpis '1' dla klucza' PRIMARY', a później dowiedziałem się, że ostatni raz przekroczenie limitu zostało częściowo zaimportowane, a id jest kluczem głównym, który nie może być tym samym, więc nie da się tego zrobić, usuń wszystkie stare dane i możesz przekierować.

W porządku. Jeśli masz ten sam problem co ja, spróbuj teraz. Nie wiem, czy nie spróbuję


Mysql wykonuje kopię zapasową danych, przywraca i odpowiada, a pojawia się następujący kod błędu:
Dyskut! info: Błąd zapytania MySQL

User: webcull
Time: 2008-7-10 2:20pm
scrip{filter}t. /post.php

SQL: INSERT INTO [Table]posts (fid, tid, first, author, authorid, subject, dateline, message, useip, invisible, anonymous, usesig, htmlon, bbcodeoff, smileyoff, parseurloff, attachment)
WARTOŚCI ('45', '2727', '0', 'webcull', '6', ''', '1216707030', 'ddd', '192.168.253.1', '0', '0', '0', '-1', '-1', ''', '0')
Error: Duplicate entry '2678' for key 1
Errno.: 1062


Powody analizy wyszukiwania online:
Może się zdarzyć, że PID pola jest kluczem głównym i atrybutem auto_increment, a wartości nie mogą istnieć duplikaty.
A kiedy robiłem kopię zapasową danych, mogło być zapisanie danych, które zepsuło tabelę danych.


Próbowałem kilku metod:
1. Brakuje niektórych atrybutów pól w tabeli danych ALTER TABELA 'cdb_posts' CHANGE 'pid' INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT
2, stół naprawczy cdb_posts
Wszyscy zawiedli!


Ostateczne obejście:
Zazwyczaj jest spowodowana uszkodzeniem pliku tabeli danych, które można naprawić za pomocą narzędzia naprawczego MySQL myisamchk.
CMD
myisamchk cdb_posts.myi -r
Popraw kartę katalogową i gotowe!




Poprzedni:Lipiec 2017 WIN7\XP· Encyklopedia do pobrania systemu GHOST! Aktualizacje trwają, ekscytujące!
Następny:Naucz cię, jak używać Myisamchk do odzyskiwania po awarii MySQL
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com