Fehlermeldung Duplicate entry '0' for key 'PRIMARY'" beim Abspeichern eines Beitrags

  • Hallo an alle, ich hoffe jemand kann mir bei meinem Problem helfen. Nach dem Update von Joomla 3.9.24 auf 3.9.26 hat sich wohl ein Fehler in meine Datenbank eingeschlichen.

    Sobald ich einen Beitrag abspeichern möchte erhalte ich die Fehlermeldung: "Fehler: Duplicate entry '0' for key 'PRIMARY'"

    Leider kenne ich mich in pyp myadmin rein gar nicht aus.


    Nach vielen Nachforschungen durch meinen webhoster habe ich folgende Nachricht bekommen:

    Ich habe einige manuelle Nachforschungen angestellt und dabei entdeckt, dass in der Tabelle e63h4_modules_menu mehrere Werte in der menuid auf 0 stehen. Bei beiden Spalten, sowohl moduleid als auch menuid handelt es sich lt. Joomla-Dokumentation um Primary-Key-Felder (https://docs.joomla.org/Tables/modules_menu).


    Primary Keys dürfen aber nie zwei mal vorhanden sein, daher rührt auch der Fehler, der Ihnen beim Speichern angezeigt wird.

    Es scheint nun so, als Läge das Problem unter anderem hier an dieser Stelle in der Tabelle e63h4_modules_menu und der Spalte menuid. Hier müsste man nun manuell eine Bereinigung oder Korrektur vornehmen. Es kann auch sein, dass ein solches Verhalten natürlich auch an einer anderen Stelle auch noch aufgetreten ist. Womöglich hat sich dieses Problem bei irgendeinem Update oder einer Plugininstallation eingeschlichen. Ich habe Ihnen hiervon einen Screenshot erstellt: (siehe Anhang)


    Das sieht mir zumindest sehr nach dem Grund für den Fehler aus, da in der Fehlermeldung von einem doppelten Eintrag mit dem Wert "0" eines Primary-Keys berichtet wird.


    Allerdings ist dies nur eine (wenn auch starke) Vermutung - den Fehler können wir nicht einfach beheben und scheint irgendwie aus der Installation zu kommen. Hier sollten Sie sich definitiv noch Rat und Unterstützung von einem Joomla-Experten holen.


    Nun wende ich mich über das Forum an alle Joomla-Experten, die mir hoffentlich bei diesem Problem helfen können?

    Evlt. ist dieses Problem bekannt?


    Vielen Dank

  • Moin,


    hast du auch alle Extensions und Template/Framework vorher aktualisiert?


    Welche PHP-version läuft bei dir?


    Behebt zwar nicht den Fehler, aber vielleicht kann er vor dem Update vermieden werden.


    ich würde das Backup einspielen und das/die Updates dan nochmal versuchen, wenn #2

    nicht helfen sollte.


    Ansonsten gibt es hier im Forum noch Hinweise dazu:


  • Meiner Ansicht nach hat die Tabelle, die du zeigst nichts mit dem Problem zu tun. Sie ist dazu da, zwei andere Tabellen anhand deren PKs miteinander zu verknüpfen.

    Ok, ja ich kenn mich mit den Tabellen leider gar nicht aus. Ich hab nur das von meinem Provider Anbieter erhalten. Zu Testzwecken habe ich diese Tabelle mit 0 Werten auch schon per Hand auf eine andere Zahl geändert - dies hat aber nur bewirkt, dass im Backend das Menü nicht mehr angezeigt wird.

  • Moin, Template wurde vorher nicht aktualisiert nein.


    Es läuft php 7.4


    Backup ist vor der Joomla Aktualisierung ist leider nicht mehr vorhanden. Mir ist das erst nach 2 Wochen aufgefallen und da wurde das Backup von damals leider schon wieder überschrieben. Außerdem kann ich die Änderungen seitdem nicht mehr alle Umsetzen. Ich bräuchte deshalb eine Lösung, die die aktuelle Version wieder zum laufen bringt.

  • Backup ist vor der Joomla Aktualisierung ist leider nicht mehr vorhanden.

    Meist hat dein Hoster (je nach Paket) ein Backup der Seite und Datenbank.


    Schau mal in deinen Kundenaccount, ob du da die alte Version wiederherstellen kannst.


    Kannst du das Template aktualisieren?

    Kommt bei anderen Aktionen auch diese Fehlermeldung?


    Vielleicht auch mal Fehler berichten auf maximum stellen.


    Ob das hilfreich ist, weiß ich nicht. Eventuell mal testen:


  • Kannst du mal schauen, ob auch beim Anlegen eines neuen Menüpunkts, einer neuen Kategorie oder eines neuen Moduls die ID auf 0 gesetzt wird?


    Ich kenne Fälle , in denen alle neuen "Einträge" immer die gleiche zuletzt vergebene ID erhalten haben. Das hatte aber mit dem Auto-Inkrement zu tun. Meist hatte es mit einem missglückten Umzug zu tun und wurde erst bemerkt, als neue Einträge angelegt werden sollten.

    Rettung war meist, das letzte Backup vor dem Umzug einzuspielen. Wenn man anfängt die Tabellen zu bearbeiten, wird es meist schnell chaotisch.


    Vielleicht hat es mit einer missglückten Aktualisierung zu zun:

    Wie hast du das Update von Joomla 3.9.24 auf Joomla 3.9.26 durchgeführt? Beschreibe mal genau deine Vorgehensweise.


    Tipp: Backups immer regelmäßig selber erstellen. Vor Aktualisierungen ist das besonders wichtig. Mit AkeebaBackup geht das ruckzuck. Das Backup grundsätzlich auf den eigenen Rechner downloaden und lange aufbewahren (Monate bis Jahre). Dann wäre dein Problem nun keines.

  • Template kann ich nicht aktualisieren und der Debug Mode zeigt nur das

    Fehler


    Speichern fehlgeschlagen! Fehler: Duplicate entry '0' for key 'PRIMARY'


    Notice: Undefined variable: baseurl in /home/www/webhosting/j3_2021-04-29/plugins/content/responsive-tables/responsive-tables.php on line 17


    Deshalb habe ich vom Provider die oben gepostete Info bekommen bzgl. der Tabellen.


    Kategorien und Meüpunkte kann ich weiterhin problemlos erstellen.


    Aktualisieren tu ich seit jeher immer über den Link vom Kontrollzentrum:

    Hier wird die Info gezeigt wenn eine neue Version verfügbar ist. Dann komme ich zur "Live-Aktualisierung" und führe diese durch. Akeeba Backup erstellt dort dann auch immer ein Backup bevor die Aktualisierung durchgeführt wird. Diese wurde aber nun schon wieder durch weitere Backups leider überschrieben und ich kann auf dieses Backup nicht mehr zurückgreifen. Und doch. Das Problem wäre weiterhin da, da ich einige Änderungen nach dem Update durchgeführt habe und selbst wenn ich auf den Stand wie vor zwei Wochen zurück komme nicht mehr die ganzen Änderungen per Hand (von den zwei Wochen) nachtragen kann.

    Einmal editiert, zuletzt von Indigo66 () aus folgendem Grund: Ein Beitrag von WOLF Anlagen-Technik mit diesem Beitrag zusammengefügt.

  • Akeebabackups können nicht überschrieben werden.

    Es sein denn, du sicherst sie nicht offline. Sonst fallen sie hinten runter.


    Hast du beim Provider nach dem Backup geschaut?

    Und aktualisiere oder deaktiviere mal das Plugin/Modul/Extension Responsive Tables.

  • Akeebabackups können nicht überschrieben werden.

    Es sein denn, du sicherst sie nicht offline. Sonst fallen sie hinten runter.


    Hast du beim Provider nach dem Backup geschaut?

    Und aktualisiere oder deaktiviere mal das Plugin/Modul/Extension Responsive Tables.

    Ich hab das offline Backup leider überschrieben. Wie gesagt, ich komme nicht mehr dran :(


    Das deaktivieren vom Responsive Table bringt auch nichts - schon probiert :(

  • Nope, das sieht nach einer händischen OP an der DB aus. Da helfen viel Kaffee und ein klarer Kopf, ich habe das schon gemacht. Zeitaufwand je nach Anzahl verwendeter Erweiterungen, es ist unwahrscheinlich, dass nur eine Tabelle betroffen ist. Also muss auch alles andere geprüft werden.

  • Wurde aber zweimal vom TE nicht beantwortet. ?(

    Hoster kann nur 7 Tage zurückgehen :(


    Nope, das sieht nach einer händischen OP an der DB aus. Da helfen viel Kaffee und ein klarer Kopf, ich habe das schon gemacht. Zeitaufwand je nach Anzahl verwendeter Erweiterungen, es ist unwahrscheinlich, dass nur eine Tabelle betroffen ist. Also muss auch alles andere geprüft werden.

    ... Und viel Kenntniss oder :) Was genau muss denn mit viel Kaffee und klarem Kopf geändert werden?

    Einmal editiert, zuletzt von Indigo66 () aus folgendem Grund: Ein Beitrag von WOLF Anlagen-Technik mit diesem Beitrag zusammengefügt.

  • Zitat

    Was genau muss denn mit viel Kaffee und klarem Kopf geändert werden?



    Ein vernünftiger Tipp kam ja schon:


    Zitat

    ich habe das schon gemacht. Zeitaufwand je nach Anzahl verwendeter Erweiterungen