{"id":840912,"date":"2026-08-18T12:41:53","date_gmt":"2026-08-18T12:41:53","guid":{"rendered":"https:\/\/www.knowband.com\/blog\/?p=840852\/"},"modified":"2026-08-22T06:00:11","modified_gmt":"2026-08-22T06:00:11","slug":"managing-database-changes-during-module-updates-prestashop","status":"publish","type":"post","link":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/","title":{"rendered":"Verwaltung von Datenbank\u00e4nderungen bei Modulaktualisierungen in PrestaShop"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Es gibt eine bestimmte Supportanfrage, die mir mittlerweile richtig Angst macht. Ein H\u00e4ndler aktualisiert ein Modul; die Aktualisierung scheint zun\u00e4chst erfolgreich zu verlaufen, doch dann funktioniert irgendetwas nicht mehr. Nie der gesamte Shop. Eine einzelne Seite des PrestaShop-Controllers verh\u00e4lt sich fehlerhaft, ein Konfigurationswert l\u00e4sst sich nicht speichern oder eine Spalte in einer Produktliste ist pl\u00f6tzlich leer. Bei genauerer Betrachtung ist der Modulcode auf dem neuesten Stand, die zugrundeliegende Datenbank jedoch noch auf der alten Version.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Genau diese L\u00fccke ist Gegenstand dieses Artikels. Ein PrestaShop-Modul besteht nicht nur aus dem ausgelieferten PHP-Code, sondern aus diesem PHP-Code plus den Tabellen und Spalten, die dieser erwartet. Fehlt das PrestaShop-Datenbank-Update, das normalerweise mit einer Code-Ver\u00f6ffentlichung ausgeliefert wird, erh\u00e4lt man ein Modul, das zwar installiert ist und scheinbar funktioniert, aber dennoch einen Fehler enth\u00e4lt.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Das ist mir selbst schon mehr als einmal passiert. Im Folgenden beschreibe ich, was ich dabei gelernt habe. <\/span><b>Aktualisierungen der PrestaShop-Moduldatenbank<\/b><span style=\"font-weight: 400;\">, auf die harte Tour.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">1.0 Wie PrestaShop-Modulaktualisierungen die Datenbank tats\u00e4chlich verarbeiten<\/span><\/h2>\n<p>[Caption id = &#8220;attachment_840862&#8221; align = &#8220;Aligncenter&#8221; width = &#8220;1237&#8221;]<a href=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/01-upgrade-flow.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-840862\" src=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/01-upgrade-flow.jpg\" alt=\"Diagramm zur Veranschaulichung der Datenbankaktualisierungen des PrestaShop-Moduls durch sequenzielle Ausf\u00fchrung von drei Upgrade-Skripten von Version 1.9.0 auf 2.1.0.\" width=\"1237\" height=\"575\" srcset=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/01-upgrade-flow.jpg 1237w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/01-upgrade-flow-300x139.jpg 300w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/01-upgrade-flow-1024x476.jpg 1024w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/01-upgrade-flow-768x357.jpg 768w\" sizes=\"auto, (max-width: 1237px) 100vw, 1237px\" \/><\/a> Beim Update-Sprung von Version 1.9.0 auf 2.1.0 werden keine Aktualisierungen \u00fcbersprungen, sondern alle dazwischenliegenden Aktualisierungsskripte der Reihe nach ausgef\u00fchrt.<\/p>\n<p><span style=\"font-weight: 400;\">Hier kursieren viele Annahmen, und einige davon sind falsch.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">F\u00fcge eine neue Version hinzu in <\/span><span style=\"font-weight: 400;\">\/modules\/<\/span><span style=\"font-weight: 400;\"> Ihre Installationsroutine wird nicht erneut ausgef\u00fchrt. Tabellen bleiben unber\u00fchrt. Stattdessen passiert Folgendes: PrestaShop liest die Modul-Konfiguration. <\/span><span style=\"font-weight: 400;\">Aktualisierung \/<\/span><span style=\"font-weight: 400;\"> Ordner, findet die Dateien mit dem Namen <\/span><span style=\"font-weight: 400;\">Upgrade .php<\/span><span style=\"font-weight: 400;\"> Es befindet sich zwischen der aufgezeichneten Version und der Version, die Ihre Modulklasse deklariert, und f\u00fchrt diese der Reihe nach aus.<\/span><\/p>\n<p><i><span style=\"font-weight: 400;\">Ein Shop auf Version 1.9.0, der Version 2.1.0 empf\u00e4ngt, f\u00fchrt drei Skripte nacheinander aus.<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">Daraus ergeben sich drei Dinge, und alle drei sind wichtig f\u00fcr <\/span><b>\u00c4nderungen an der PrestaShop-Datenbank<\/b><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><b>Die Version in der `module`-Tabelle ist die ma\u00dfgebliche Quelle.<\/b><span style=\"font-weight: 400;\"> Nicht die in Ihrer Hauptklassendatei. PrestaShop liest beide. Ausschlaggebend ist die gespeicherte Datei, die bestimmt, wie viele Aktualisierungsskripte ausgef\u00fchrt werden.<\/span><\/p>\n<p><b>Ihre `install()`-Methode ist nur f\u00fcr Neuinstallationen gedacht.<\/b><span style=\"font-weight: 400;\"> Angenommen, Version 2.0 ben\u00f6tigt eine neue Tabelle. F\u00fcgen Sie sie ein. <\/span><span style=\"font-weight: 400;\">installieren()<\/span><span style=\"font-weight: 400;\"> Wer auf Version 2.0 umsteigt, ist abgesichert. Der Nutzer von Version 1.9 erh\u00e4lt nichts, da die Installation vor einem Jahr abgeschlossen wurde und nicht mehr aktualisiert wird.<\/span><\/p>\n<p><b>Ein einziger Fehler legt alles lahm.<\/b><span style=\"font-weight: 400;\"> Return <\/span><span style=\"font-weight: 400;\">falsch<\/span><span style=\"font-weight: 400;\"> Wenn eine Upgrade-Funktion ausgef\u00fchrt wird, passieren drei Dinge: PrestaShop h\u00e4lt an, speichert die betroffene Version und deaktiviert das Modul. Der n\u00e4chste Skriptvorgang wird nicht ausgef\u00fchrt. Dies ist beabsichtigt, bedeutet aber, dass eine unvollst\u00e4ndig angewendete Schema\u00e4nderung zwar die Funktionalit\u00e4t einschr\u00e4nkt, aber nicht vollst\u00e4ndig zum Absturz f\u00fchrt.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Das <\/span><a href=\"https:\/\/devdocs.prestashop-project.org\/8\/modules\/creation\/enabling-auto-update\/\"><span style=\"font-weight: 400;\">Automatische Aktualisierung f\u00fcr Module aktivieren<\/span><\/a><span style=\"font-weight: 400;\"> Auf dieser Seite sind die Regeln f\u00fcr die Dateibenennung festgelegt. Lesen Sie sie sich einmal gr\u00fcndlich durch, anstatt sie aus dem Ged\u00e4chtnis abzurufen.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Die Namensfalle der Upgrade-Funktion<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Das hat mich einen Nachmittag gekostet. <\/span><span style=\"font-weight: 400;\">Upgrade-Modul 201<\/span><span style=\"font-weight: 400;\"> or <\/span><span style=\"font-weight: 400;\">upgradeModule201<\/span><span style=\"font-weight: 400;\"> Es dient als Funktionsname, und PrestaShop sucht nach beiden. Bevor Ihre Datei eingebunden wird, pr\u00fcft PrestaShop au\u00dferdem, ob einer dieser Namen bereits existiert. Wird er gefunden, wird die Datei als Duplikat markiert und \u00fcbersprungen.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Das Kopieren eines alten Upgrade-Skripts als Vorlage ist genau der Grund, warum viele in diese Situation geraten. Der Name im Skript wird nie ge\u00e4ndert. Es findet kein Upgrade statt, und die Fehlermeldung ist wenig aussagekr\u00e4ftig.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">2.0 PrestaShop-Datenbankmigration: Was l\u00e4uft in realen Shops schief?<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Das alles passierte in L\u00e4den, in denen ich gearbeitet habe.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">PrestaShop-Datenbankschema\u00e4nderungen, die zwischen verschiedenen Installationen abweichen<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Version 2.0 ben\u00f6tigt eine neue Spalte, daher aktualisieren Sie bitte. <\/span><span style=\"font-weight: 400;\">installieren()<\/span><span style=\"font-weight: 400;\"> und ein Upgrade-Skript schreiben. Beides korrekt. Drei Versionen sp\u00e4ter benennt jemand den Modulordner um oder ein H\u00e4ndler installiert das Modul neu. Bei manchen Installationen erstellte `install()` diese Spalte, bei anderen der Upgrade-Pfad. Zwei Definitionen, die sich auseinanderentwickeln, und eine einzige Versionsnummer deckt nun beide ab.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Die Definition befindet sich also in einer einzigen Methode, die von beiden Pfaden aufgerufen wird. \u00c4nderungen am PrestaShop-Datenbankschema k\u00f6nnen nicht voneinander abweichen, wenn es nur eine einzige Definition gibt.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Upgrade-Skripte, die einen sauberen Ausgangspunkt voraussetzen<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">ALTER TABLE &#8230; ADD COLUMN<\/span><span style=\"font-weight: 400;\"> Wenn eine Spalte bereits existiert, wird ein Fehler ausgel\u00f6st, Ihre Funktion gibt \u201efalse\u201c zur\u00fcck, und das Modul wird deaktiviert. Unterbrechen Sie eine vorherige Aktualisierung, stellen Sie eine Teilsicherung wieder her oder synchronisieren Sie zweimal vom Staging-Bereich: Eine dieser M\u00f6glichkeiten f\u00fchrt zum selben Ergebnis.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Jede Schema\u00e4nderung, die ich jetzt vornehme, pr\u00fcft zuerst etwas. Das Hinzuf\u00fcgen einer Spalte bedeutet \u2026 <\/span><span style=\"font-weight: 400;\">SPALTEN ANZEIGEN<\/span><span style=\"font-weight: 400;\"> Das vorherige Erstellen einer Tabelle bedeutet <\/span><span style=\"font-weight: 400;\">TISCHE ANZEIGEN<\/span><span style=\"font-weight: 400;\">, ein Index bedeutet <\/span><span style=\"font-weight: 400;\">INHALTSVERZEICHNIS ANZEIGEN<\/span><span style=\"font-weight: 400;\">Ein paar Zeilen, und das Skript \u00fcbersteht einen zweiten Durchlauf. Das ist wichtig, denn die Datenbank eines Fremden kann sich in jedem beliebigen Zustand befinden. <\/span><span style=\"font-weight: 400;\">WENN NICHT EXISTIERT<\/span><span style=\"font-weight: 400;\"> in beiden <\/span><a href=\"https:\/\/mariadb.com\/kb\/en\/alter-table\/\"><span style=\"font-weight: 400;\">MySQL und MariaDB<\/span><\/a><span style=\"font-weight: 400;\">Allerdings nur bei einigen Operationen, daher ist die explizite Pr\u00fcfung besser geeignet.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Multistore: Konfigurationszeilen, die nur f\u00fcr einen Shop geschrieben wurden<\/span><\/h3>\n<p><a href=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/03-multistore-config.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-840864\" src=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/03-multistore-config.jpg\" alt=\"Vergleich der PrestaShop-Moduldatenbank-Updates: Ein Konfigurationsschl\u00fcssel ohne Standardwert verursacht Debug-Modus-Fehler, im Gegensatz zu einem f\u00fcr jeden Shop festgelegten Standardwert.\" width=\"1234\" height=\"661\" srcset=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/03-multistore-config.jpg 1234w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/03-multistore-config-300x161.jpg 300w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/03-multistore-config-1024x549.jpg 1024w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/03-multistore-config-768x411.jpg 768w\" sizes=\"auto, (max-width: 1234px) 100vw, 1234px\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Diese Version ist still und heimt\u00fcckisch. Es gibt jetzt eine Shop-spezifische Einstellung. Die Standardzeile wurde vom Upgrade-Skript erstellt und vom Entwickler getestet \u2013 alles scheint in Ordnung. Allerdings wurde nur eine Zeile f\u00fcr den jeweiligen Shop geschrieben, und der H\u00e4ndler betreibt vier Shops.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Drei Shops weisen diese Angabe nun nicht mehr auf. Je nachdem, wie Ihr Code dies interpretiert, erhalten Sie entweder eine PHP-Warnung, einen leeren Wert, der als g\u00fcltige Einstellung behandelt wird, oder eine leere Stelle, an der eigentlich ein Preis stehen sollte. <\/span><a href=\"https:\/\/devdocs.prestashop-project.org\/8\/modules\/concepts\/multistore\/\"><span style=\"font-weight: 400;\">Dokumentation f\u00fcr mehrere Filialen<\/span><\/a><span style=\"font-weight: 400;\"> Umfasst die Kontextregeln. Durchl\u00e4uft jede Shop-ID bei jedem Upgrade, das die Konfiguration oder die Daten pro Shop betrifft.<\/span><\/p>\n<p><i><span style=\"font-weight: 400;\">Bei einer Installation in einem einzelnen Shop ist dieser Fehler nicht sichtbar.<\/span><\/i><\/p>\n<h3><span style=\"font-weight: 400;\">ALTER TABLE-Sperren auf gro\u00dfen Katalogtabellen<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Das Hinzuf\u00fcgen einer Spalte zu einer Tabelle mit 400,000 Zeilen erfolgt nicht sofort. Je nach Vorgang, MySQL-Version und Speichermodul kann es erforderlich sein, die gesamte Tabelle zu kopieren. Im laufenden Betrieb w\u00e4hrend der \u00d6ffnungszeiten dauert diese Sperre lange genug, damit Kunden sie bemerken.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Deshalb pr\u00fcfe ich die Tabellengr\u00f6\u00dfe, bevor ich die Migration schreibe. Ist sie gro\u00df, nutze ich ein Wartungsfenster oder strukturiere die Tabelle um, um einen erneuten Aufbau zu vermeiden.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Der Konfigurationsschl\u00fcssel ohne Standardwert<\/span><\/h3>\n<p><a href=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/02-config-default.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-840863\" src=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/02-config-default.jpg\" alt=\"Codevergleich, der eine ungesch\u00fctzte versus gesch\u00fctzte PrestaShop-Schemapr\u00fcfung zeigt\" width=\"1237\" height=\"645\" srcset=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/02-config-default.jpg 1237w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/02-config-default-300x156.jpg 300w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/02-config-default-1024x534.jpg 1024w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/02-config-default-768x400.jpg 768w\" sizes=\"auto, (max-width: 1237px) 100vw, 1237px\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Die Variante, die ich am h\u00e4ufigsten in den Modulen anderer Leute sehe, und dabei wird keine Tabelle verwendet.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Sie f\u00fcgen eine Einstellung in der neuen Version hinzu. Das Admin-Formular liest diese. Ebenso der Front-Controller. Beide wurden auf einem Rechner entwickelt, auf dem die Einstellungsseite bereits mindestens einmal gespeichert wurde. Der Schl\u00fcssel ist also vorhanden und alles scheint korrekt zu sein. Ver\u00f6ffentlichen Sie das, und jede bestehende Installation liest die Einstellung. <\/span><span style=\"font-weight: 400;\">Konfiguration<\/span><span style=\"font-weight: 400;\"> Schl\u00fcssel, den nie jemand geschrieben hat.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Was zur\u00fcckkommt, ist <\/span><span style=\"font-weight: 400;\">falsch<\/span><span style=\"font-weight: 400;\">Ihr Standardwert taucht nie auf, auch keine leere Zeichenkette, die Sie zumindest pr\u00fcfen k\u00f6nnten. Stattdessen wird sie als Zahl verwendet oder an eine Funktion \u00fcbergeben, die eine Zeichenkette erwartet. Ist der Debug-Modus deaktiviert, kommt man oft ungeschoren davon: Der H\u00e4ndler sieht eine leicht fehlerhafte Seite und denkt sich nichts dabei. Ist der Debug-Modus aktiviert, wird der Fehler als Warnmeldung oder Typfehler angezeigt. So kommt es, dass Sie die Meldung \u201eDas Modul funktioniert im Debug-Modus nicht\u201c erhalten, obwohl nur der Debug-Modus selbst korrekt arbeitet.<\/span><\/p>\n<p><i><span style=\"font-weight: 400;\">Derselbe Code, einmal mit und einmal ohne Angabe des Standardwerts.<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">Die L\u00f6sung ist umst\u00e4ndlich. Jeder neue Konfigurationsschl\u00fcssel erh\u00e4lt seinen Standardwert im Upgrade-Skript f\u00fcr jeden Shop, inklusive des Codes zum Auslesen. Lesen Sie das Skript daher unbedingt mit Vorsicht, da Sie nicht sicher sein k\u00f6nnen, dass das Upgrade erfolgreich war.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">PrestaShop-Moduldatenbankmigration versus Schema\u00e4nderung<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Schema\u00e4nderungen sind der einfache Teil. Der schwierige Teil besteht darin, die Bedeutung vorhandener Daten zu \u00e4ndern: eine Spalte in zwei Teile aufzuteilen, ein CSV-Feld in eine verkn\u00fcpfte Tabelle zu verschieben, einen Status neu zu kodieren.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Dort habe ich den gr\u00f6\u00dften Schaden gesehen. Ein verpfuschter <\/span><span style=\"font-weight: 400;\">ALTER TABELLE<\/span><span style=\"font-weight: 400;\"> Ein Fehler schl\u00e4gt lautstark fehl; eine misslungene Datentransformation gelingt zwar, erzeugt aber unverst\u00e4ndliche Daten. Bei einer Datenbankmigration eines PrestaShop-Moduls, die Daten verschiebt, muss die Anzahl der Daten vor und nach der Migration ermittelt und anschlie\u00dfend verglichen werden. Dies sollte besser im Upgrade-Skript selbst entdeckt werden als von einem H\u00e4ndler drei Wochen sp\u00e4ter.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Best Practices f\u00fcr das PrestaShop-Modul-Upgrade 3.0, die ich tats\u00e4chlich verteidigen w\u00fcrde<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Diejenigen, die mich gerettet haben:<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Jede Migration sollte idempotent sein<\/span><\/h3>\n<p><a href=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/04-idempotent-migration.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-840865\" src=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/04-idempotent-migration.jpg\" alt=\"Aktualisierungen der PrestaShop-Moduldatenbank: Migration, die von einem sauberen Neustart ausgeht, im Vergleich zu einer, die zuerst pr\u00fcft\" width=\"1234\" height=\"612\" srcset=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/04-idempotent-migration.jpg 1234w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/04-idempotent-migration-300x149.jpg 300w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/04-idempotent-migration-1024x508.jpg 1024w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/04-idempotent-migration-768x381.jpg 768w\" sizes=\"auto, (max-width: 1234px) 100vw, 1234px\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Beim zweiten Durchlauf sollte sich nichts \u00e4ndern, was beim ersten Durchlauf nicht bereits ber\u00fccksichtigt wurde. Sobald diese Eigenschaft verf\u00fcgbar ist, verschwindet eine ganze Kategorie von Supportproblemen, da der Zustand der Datenbank nicht mehr zuerst ermittelt werden muss. Bevor Sie rohes SQL auf die Kerntabellen von PrestaShop anwenden, sollten Sie Folgendes beachten: <\/span><a href=\"https:\/\/devdocs.prestashop-project.org\/8\/development\/database\/\"><span style=\"font-weight: 400;\">Datenbankebenen-Notizen<\/span><\/a><span style=\"font-weight: 400;\"> sind eine Stunde wert.<\/span><\/p>\n<p><i><span style=\"font-weight: 400;\">Die gesch\u00fctzte Version \u00fcbersteht einen zweiten Durchlauf.<\/span><\/i><\/p>\n<h3><span style=\"font-weight: 400;\">Protokolliere jeden Fehler, anstatt stillschweigend \u201efalse\u201c zur\u00fcckzugeben.<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Ein nackter <\/span><span style=\"font-weight: 400;\">return false<\/span><span style=\"font-weight: 400;\"> Das reicht PrestaShop, um das Modul zu stoppen und zu deaktivieren. F\u00fcr Sie reicht es nicht. Daher sollten Sie den Vorgang protokollieren. Fangen Sie alle Ausgaben ab und \u00fcbergeben Sie diese zusammen mit Modulname und -version an PrestaShopLogger. Andernfalls meldet ein H\u00e4ndler ein fehlgeschlagenes Update, und Sie tappen im Dunkeln.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Bei PHP 7 und h\u00f6her, catch <\/span><span style=\"font-weight: 400;\">Fehler<\/span><span style=\"font-weight: 400;\"> und auch die <\/span><span style=\"font-weight: 400;\">Exception<\/span><span style=\"font-weight: 400;\">Wenn in Ihrem eigenen Migrationscode ein Typfehler auftritt, wird dieser als ein <\/span><span style=\"font-weight: 400;\">Fehler<\/span><span style=\"font-weight: 400;\">Ein Handler \u00fcberwacht also nur Folgendes: <\/span><span style=\"font-weight: 400;\">Exception<\/span><span style=\"font-weight: 400;\"> l\u00e4sst es durch.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Unterst\u00fctzen Sie jede Version, die Sie jemals ausgeliefert haben.<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Ein H\u00e4ndler kann jede beliebige Version verwenden, die Sie ver\u00f6ffentlicht haben. Jemand, der von Version 1.4 auf 3.0 aktualisiert, f\u00fchrt alle dazwischenliegenden Skripte der Reihe nach aus, sodass jedes Skript mit dem Schema des vorherigen Skripts arbeiten muss. Deshalb verbleiben alte Upgrade-Dateien im Modul. Jemand, der zwei Jahre zur\u00fcckliegt, hat keine andere M\u00f6glichkeit, fortzufahren.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Testen Sie auf der Staging-Umgebung, nicht auf einer sauberen lokalen Installation.<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Eine Neuinstallation der neuen Version sagt nichts \u00fcber das Upgrade aus. Stattdessen sollten Sie die alte Version installieren, realistische Daten eingeben und dann das Upgrade durchf\u00fchren. Dies gilt auch f\u00fcr Multistore-Systeme, sofern diese unterst\u00fctzt werden.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Noch besser: Nehmen Sie eine Kopie eines echten Shops und f\u00fchren Sie das Upgrade dar\u00fcber durch. Ihre lokale Installation verf\u00fcgt \u00fcber saubere Daten und vier Produkte, weshalb keine Ergebnisse angezeigt werden. Ein echter Shop hingegen enth\u00e4lt unvollst\u00e4ndige Importe, Zeilen, die von einem vor zwei Jahren deinstallierten Modul \u00fcbrig geblieben sind, Spalten, die ein vorheriger Entwickler manuell hinzugef\u00fcgt hat, und einen so gro\u00dfen Katalog, dass\u2026 <\/span><span style=\"font-weight: 400;\">ALTER TABELLE<\/span><span style=\"font-weight: 400;\"> dauert eine Weile.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Und dann kommt es auf den Zeitpunkt an. Ein Upgrade, das laut realen Daten sechs Minuten dauern soll, l\u00e4sst sich besser bei der Buchung eines Wartungsfensters herausfinden als freitags um elf Uhr.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Erstellen Sie vor Schema\u00e4nderungen ein Backup und geben Sie dies an.<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Vor einem Modul-Upgrade wird kein Snapshot Ihrer Tabellen erstellt. Weder von PrestaShop noch von irgendeinem anderen System. Wenn der H\u00e4ndler also kein Backup hat und die Migration mitten in der Datentransformation abbricht, sind diese Daten verloren. Weisen Sie im Changelog darauf hin, anstatt dies gemeinsam festzustellen.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Wiederherstellung eines fehlgeschlagenen PrestaShop-Datenbankupdates<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Ein Update im Live-Shop ist fehlgeschlagen; das Modul wurde deaktiviert. Ungef\u00e4hr in dieser Reihenfolge:<\/span><\/p>\n<p><b>Ermitteln Sie, welche Version fehlgeschlagen ist.<\/b><span style=\"font-weight: 400;\"> Das wird protokolliert, und falls Sie eine Log-Nachricht verfasst haben, wird diese ebenfalls dort gespeichert. Dadurch wissen Sie, welches Skript Sie \u00f6ffnen m\u00fcssen und welche \u00c4nderungen vor dem Abbruch vorgenommen wurden.<\/span><\/p>\n<p><b>Pr\u00fcfen Sie das tats\u00e4chliche Schema, nicht die Versionsnummer.<\/b><span style=\"font-weight: 400;\"> Um so <\/span><span style=\"font-weight: 400;\">Modulen<\/span><span style=\"font-weight: 400;\"> Die Tabelle gibt an, was das letzte erfolgreiche Upgrade geschrieben hat. Die eigentlichen Tabellen liefern die Antwort; sie werden mit dem verglichen, was das fehlgeschlagene Skript versucht hat.<\/span><\/p>\n<p><b>Nach vorne blicken, nicht nach hinten.<\/b><span style=\"font-weight: 400;\"> Das Zur\u00fccksetzen der Versionsnummer ist zwar verlockend, aber meist falsch, da die \u00e4lteren Skripte bereits ausgef\u00fchrt wurden und deren erneute Ausf\u00fchrung mit einem teilweise ge\u00e4nderten Schema ein Problem in ein dreifaches verwandelt. Schreiben Sie eine Korrekturmigration vom aktuellen Schema zum Soll-Schema.<\/span><\/p>\n<p><b>Anschlie\u00dfend muss herausgefunden werden, warum die Migration nicht idempotent war.<\/b><span style=\"font-weight: 400;\"> Das ist der eigentliche Fehler.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Eine kurze Checkliste vor dem Versand eines Modul-Updates<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Die Liste, die ich f\u00fchre:<\/span><\/p>\n<ol>\n<li><span style=\"font-weight: 400;\"> Hauptklassenversion, h\u00f6chste <\/span><span style=\"font-weight: 400;\">upgrade-*.php<\/span><span style=\"font-weight: 400;\"> Datei: Stimmen die Dateien \u00fcberein?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Jede Upgrade-Funktion ist nach der Version ihrer jeweiligen Datei benannt?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Bei jeder Schema\u00e4nderung zuerst pr\u00fcfen, ob sie bereits angewendet wurde?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Jede Konfigurationsschleife durchl\u00e4uft alle Shops?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Jedem neuen Konfigurationsschl\u00fcssel wird ein Standardwert f\u00fcr bestehende Installationen zugewiesen?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Haben Sie schon einmal gegen eine Simulation eines echten Ladens gespielt?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Alte Version installiert, Daten hinzugef\u00fcgt und dann aktualisiert?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Gleicher Pfad bei Multistore?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Etwas N\u00fctzliches wurde vor jedem Protokolleintrag hinzugef\u00fcgt. <\/span><span style=\"font-weight: 400;\">return false<\/span><span style=\"font-weight: 400;\">?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Fang <\/span><span style=\"font-weight: 400;\">Fehler<\/span><span style=\"font-weight: 400;\"> und auch die <\/span><span style=\"font-weight: 400;\">Exception<\/span><span style=\"font-weight: 400;\">?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Sind f\u00fcr H\u00e4ndler, die mehrere Versionen zur\u00fcckliegen, noch alte Upgrade-Dateien vorhanden?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> \u00c4nderungsprotokoll mit der Aufforderung an H\u00e4ndler, Daten zu sichern?<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Auf einem gro\u00dfen Tisch, wie lang ist das? <\/span><span style=\"font-weight: 400;\">ALTER<\/span><span style=\"font-weight: 400;\"> Ein Schloss in der Hand?<\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">Die Punkte 6 und 7 werden oft \u00fcbersprungen, aber zusammen erfassen sie den gr\u00f6\u00dften Teil davon.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Fazit<\/span><\/h2>\n<p><b>PrestaShop-Modul-Upgrade<\/b><span style=\"font-weight: 400;\"> Probleme sind aus einem Grund unangenehm: Sie werden nirgends angek\u00fcndigt. Das Modul meldet seine neue Version problemlos. Die Admin-Seite l\u00e4dt. Keine Protokolle, es sei denn, man hat sie selbst geschrieben. W\u00e4hrenddessen erwartet der Code das eine, die Datenbank das andere, und das bleibt unber\u00fchrt, bis jemand die eine Funktion nutzt, die dazwischen liegt.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Behandeln Sie das Schema als Teil des Releases. Schreiben Sie Migrationen, die auch nach einem zweiten Durchlauf bestehen. Protokollieren Sie alle Vorg\u00e4nge. Testen Sie die Migration in der Staging-Umgebung, bevor sie von H\u00e4ndlern verwendet wird. Auf Framework-Seite: PrestaShop <\/span><a href=\"https:\/\/devdocs.prestashop-project.org\/8\/modules\/creation\/\"><span style=\"font-weight: 400;\">Modulentwicklungsdokumentation<\/span><\/a><span style=\"font-weight: 400;\"> ist der Anfang.<\/span><\/p>\n<p>Wenn Sie Fragen zur Performance oder Migration Ihrer Website haben oder Unterst\u00fctzung ben\u00f6tigen, helfen Ihnen unsere Experten gerne weiter. Kontaktieren Sie das Knowband-Team unter <a href=\"\/de\/cdn-cgi\/l\/email-protection#f5868085859a8781b59e9b9a8297949b91db969a98\"><span class=\"__cf_email__\" data-cfemail=\"ee9d9b9e9e819c9aae858081998c8f808ac08d8183\">[E-Mail gesch\u00fctzt] <\/span><\/a> Heute noch auf der Suche nach zuverl\u00e4ssigen E-Commerce-Plugins, die auf Ihre E-Commerce-Anforderungen zugeschnitten sind.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Es gibt eine bestimmte Supportanfrage, die mir mittlerweile richtig Angst macht. Ein H\u00e4ndler aktualisiert ein Modul; die Aktualisierung scheint zun\u00e4chst erfolgreich zu verlaufen, doch dann funktioniert irgendetwas nicht mehr. Nie der gesamte Shop. Eine einzelne Seite des PrestaShop-Controllers verh\u00e4lt sich fehlerhaft, ein Konfigurationswert l\u00e4sst sich nicht speichern oder eine Spalte in einer Produktliste ist pl\u00f6tzlich [&hellip;]<\/p>\n","protected":false},"author":41,"featured_media":840928,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_kbui_enabled":"","footnotes":""},"categories":[31262,2335,2336],"tags":[52455,52462,52457,52461,52459,42412,52460,42488,52456,52458],"class_list":["post-840912","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-commerce-electronique-de","category-prestashop-de","category-prestashop-tutorials-de","tag-aktualisierungen-der-prestashop-moduldatenbank","tag-nderungen-am-prestashop-datenbankschema","tag-nderungen-an-der-prestashop-datenbank","tag-best-practices-fr-die-aktualisierung-von-prestashop-modulen","tag-migration-der-prestashop-moduldatenbank","tag-prestashop-database-migration","tag-prestashop-datenbankaktualisierung","tag-prestashop-datenbankmigration","tag-prestashop-modul-updates","tag-prestashop-modul-upgrade"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates | PrestaShop<\/title>\n<meta name=\"description\" content=\"In diesem Leitfaden von Knowband erfahren Sie mehr \u00fcber die Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates in PrestaShop 1.7.x, 8.x und 9.x.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates | PrestaShop\" \/>\n<meta property=\"og:description\" content=\"In diesem Leitfaden von Knowband erfahren Sie mehr \u00fcber die Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates in PrestaShop 1.7.x, 8.x und 9.x.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/\" \/>\n<meta property=\"og:site_name\" content=\"Knowband Blog | Ecommerce Modules\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Knowband\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-18T12:41:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-22T06:00:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1983\" \/>\n\t<meta property=\"og:image:height\" content=\"793\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Olivia Smith\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@KnowbandPlugin\" \/>\n<meta name=\"twitter:site\" content=\"@KnowbandPlugin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Olivia Smith\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/\"},\"author\":{\"name\":\"Olivia Smith\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#\\\/schema\\\/person\\\/d06d387c1a539103dd802941df1953c0\"},\"headline\":\"Verwaltung von Datenbank\u00e4nderungen bei Modulaktualisierungen in PrestaShop\",\"datePublished\":\"2026-08-18T12:41:53+00:00\",\"dateModified\":\"2026-08-22T06:00:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/\"},\"wordCount\":2309,\"publisher\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png\",\"keywords\":[\"Aktualisierungen der PrestaShop-Moduldatenbank\",\"\u00c4nderungen am PrestaShop-Datenbankschema\",\"\u00c4nderungen an der PrestaShop-Datenbank\",\"Best Practices f\u00fcr die Aktualisierung von PrestaShop-Modulen\",\"Migration der PrestaShop-Moduldatenbank\",\"PrestaShop database migration\",\"PrestaShop-Datenbankaktualisierung\",\"PrestaShop-Datenbankmigration\",\"PrestaShop-Modul-Updates\",\"PrestaShop-Modul-Upgrade\"],\"articleSection\":[\"Commerce \u00e9lectronique\",\"Prestashop\",\"Prestashop Tutorials\"],\"inLanguage\":\"de-DE\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/\",\"name\":\"Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates | PrestaShop\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png\",\"datePublished\":\"2026-08-18T12:41:53+00:00\",\"dateModified\":\"2026-08-22T06:00:11+00:00\",\"description\":\"In diesem Leitfaden von Knowband erfahren Sie mehr \u00fcber die Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates in PrestaShop 1.7.x, 8.x und 9.x.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/#breadcrumb\"},\"inLanguage\":\"de-DE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png\",\"contentUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png\",\"width\":1983,\"height\":793,\"caption\":\"Verwaltung von Datenbank\u00e4nderungen bei PrestaShop-Modul-Updates\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/prestashop-de\\\/managing-database-changes-during-module-updates-prestashop\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Verwaltung von Datenbank\u00e4nderungen bei Modulaktualisierungen in PrestaShop\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#website\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/\",\"name\":\"Knowband Blog | Ecommerce Modules\",\"description\":\"Magento, Prestashop, Opencart, Shopify\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de-DE\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#organization\",\"name\":\"Knowband Blog | Ecommerce Modules\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/09\\\/cropped-knowband_logo-v2.png\",\"contentUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/09\\\/cropped-knowband_logo-v2.png\",\"width\":153,\"height\":61,\"caption\":\"Knowband Blog | Ecommerce Modules\"},\"image\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Knowband\",\"https:\\\/\\\/x.com\\\/KnowbandPlugin\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#\\\/schema\\\/person\\\/d06d387c1a539103dd802941df1953c0\",\"name\":\"Olivia Smith\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/plugins\\\/wp-user-avatar\\\/deprecated\\\/wp-user-avatar\\\/images\\\/wpua-96x96.png\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/plugins\\\/wp-user-avatar\\\/deprecated\\\/wp-user-avatar\\\/images\\\/wpua-96x96.png\",\"contentUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/plugins\\\/wp-user-avatar\\\/deprecated\\\/wp-user-avatar\\\/images\\\/wpua-96x96.png\",\"caption\":\"Olivia Smith\"},\"description\":\"Olivia ist eCommerce-Technikberaterin bei Knowband und unterst\u00fctzt H\u00e4ndler dabei, das Beste aus Plattformen wie PrestaShop, Shopify, Magento, WooCommerce und OpenCart herauszuholen. Ihre Beitr\u00e4ge reichen von der Plugin-Einrichtung \u00fcber die Shop-Anpassung bis hin zu Performance und Fehlerbehebung \u2013 immer mit dem Ziel, Shopbetreibern praktisches, direkt umsetzbares technisches Wissen zu vermitteln. Bei Knowband sind wir Experten der eCommerce-Branche mit Schwerpunkt auf der Entwicklung von Plugins. Mit langj\u00e4hriger Erfahrung bieten wir die besten Plugins f\u00fcr Plattformen wie Magento, PrestaShop, OpenCart und Shopify. Zudem entwickeln und passen wir Module individuell f\u00fcr Websites und Onlineshops an. Unser Team bleibt stets auf dem neuesten Stand der Branchentrends und liefert innovative L\u00f6sungen zur Verbesserung der Funktionalit\u00e4t von eCommerce-Websites. Mit einem kundenorientierten Ansatz ist Knowband ein vertrauensw\u00fcrdiger Partner f\u00fcr eCommerce-Plugin-L\u00f6sungen.\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/de\\\/author\\\/olivia\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates | PrestaShop","description":"In diesem Leitfaden von Knowband erfahren Sie mehr \u00fcber die Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates in PrestaShop 1.7.x, 8.x und 9.x.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/","og_locale":"de_DE","og_type":"article","og_title":"Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates | PrestaShop","og_description":"In diesem Leitfaden von Knowband erfahren Sie mehr \u00fcber die Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates in PrestaShop 1.7.x, 8.x und 9.x.","og_url":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/","og_site_name":"Knowband Blog | Ecommerce Modules","article_publisher":"https:\/\/www.facebook.com\/Knowband","article_published_time":"2026-08-18T12:41:53+00:00","article_modified_time":"2026-08-22T06:00:11+00:00","og_image":[{"width":1983,"height":793,"url":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png","type":"image\/png"}],"author":"Olivia Smith","twitter_card":"summary_large_image","twitter_creator":"@KnowbandPlugin","twitter_site":"@KnowbandPlugin","twitter_misc":{"Written by":"Olivia Smith","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/#article","isPartOf":{"@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/"},"author":{"name":"Olivia Smith","@id":"https:\/\/www.knowband.com\/blog\/fr\/#\/schema\/person\/d06d387c1a539103dd802941df1953c0"},"headline":"Verwaltung von Datenbank\u00e4nderungen bei Modulaktualisierungen in PrestaShop","datePublished":"2026-08-18T12:41:53+00:00","dateModified":"2026-08-22T06:00:11+00:00","mainEntityOfPage":{"@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/"},"wordCount":2309,"publisher":{"@id":"https:\/\/www.knowband.com\/blog\/fr\/#organization"},"image":{"@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/#primaryimage"},"thumbnailUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png","keywords":["Aktualisierungen der PrestaShop-Moduldatenbank","\u00c4nderungen am PrestaShop-Datenbankschema","\u00c4nderungen an der PrestaShop-Datenbank","Best Practices f\u00fcr die Aktualisierung von PrestaShop-Modulen","Migration der PrestaShop-Moduldatenbank","PrestaShop database migration","PrestaShop-Datenbankaktualisierung","PrestaShop-Datenbankmigration","PrestaShop-Modul-Updates","PrestaShop-Modul-Upgrade"],"articleSection":["Commerce \u00e9lectronique","Prestashop","Prestashop Tutorials"],"inLanguage":"de-DE"},{"@type":"WebPage","@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/","url":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/","name":"Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates | PrestaShop","isPartOf":{"@id":"https:\/\/www.knowband.com\/blog\/fr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/#primaryimage"},"image":{"@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/#primaryimage"},"thumbnailUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png","datePublished":"2026-08-18T12:41:53+00:00","dateModified":"2026-08-22T06:00:11+00:00","description":"In diesem Leitfaden von Knowband erfahren Sie mehr \u00fcber die Verwaltung von Datenbank\u00e4nderungen bei Modul-Updates in PrestaShop 1.7.x, 8.x und 9.x.","breadcrumb":{"@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/#breadcrumb"},"inLanguage":"de-DE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/"]}]},{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/#primaryimage","url":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png","contentUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2026\/08\/ChatGPT-Image-Aug-22-2026-11_27_37-AM.png","width":1983,"height":793,"caption":"Verwaltung von Datenbank\u00e4nderungen bei PrestaShop-Modul-Updates"},{"@type":"BreadcrumbList","@id":"https:\/\/www.knowband.com\/blog\/de\/prestashop-de\/managing-database-changes-during-module-updates-prestashop\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.knowband.com\/blog\/fr\/"},{"@type":"ListItem","position":2,"name":"Verwaltung von Datenbank\u00e4nderungen bei Modulaktualisierungen in PrestaShop"}]},{"@type":"WebSite","@id":"https:\/\/www.knowband.com\/blog\/fr\/#website","url":"https:\/\/www.knowband.com\/blog\/fr\/","name":"Knowband Blog | Ecommerce Modules","description":"Magento, Prestashop, Opencart, Shopify","publisher":{"@id":"https:\/\/www.knowband.com\/blog\/fr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.knowband.com\/blog\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de-DE"},{"@type":"Organization","@id":"https:\/\/www.knowband.com\/blog\/fr\/#organization","name":"Knowband Blog | Ecommerce Modules","url":"https:\/\/www.knowband.com\/blog\/fr\/","logo":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/www.knowband.com\/blog\/fr\/#\/schema\/logo\/image\/","url":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2016\/09\/cropped-knowband_logo-v2.png","contentUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2016\/09\/cropped-knowband_logo-v2.png","width":153,"height":61,"caption":"Knowband Blog | Ecommerce Modules"},"image":{"@id":"https:\/\/www.knowband.com\/blog\/fr\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Knowband","https:\/\/x.com\/KnowbandPlugin"]},{"@type":"Person","@id":"https:\/\/www.knowband.com\/blog\/fr\/#\/schema\/person\/d06d387c1a539103dd802941df1953c0","name":"Olivia Smith","image":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/www.knowband.com\/blog\/wp-content\/plugins\/wp-user-avatar\/deprecated\/wp-user-avatar\/images\/wpua-96x96.png","url":"https:\/\/www.knowband.com\/blog\/wp-content\/plugins\/wp-user-avatar\/deprecated\/wp-user-avatar\/images\/wpua-96x96.png","contentUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/plugins\/wp-user-avatar\/deprecated\/wp-user-avatar\/images\/wpua-96x96.png","caption":"Olivia Smith"},"description":"Olivia ist eCommerce-Technikberaterin bei Knowband und unterst\u00fctzt H\u00e4ndler dabei, das Beste aus Plattformen wie PrestaShop, Shopify, Magento, WooCommerce und OpenCart herauszuholen. Ihre Beitr\u00e4ge reichen von der Plugin-Einrichtung \u00fcber die Shop-Anpassung bis hin zu Performance und Fehlerbehebung \u2013 immer mit dem Ziel, Shopbetreibern praktisches, direkt umsetzbares technisches Wissen zu vermitteln. Bei Knowband sind wir Experten der eCommerce-Branche mit Schwerpunkt auf der Entwicklung von Plugins. Mit langj\u00e4hriger Erfahrung bieten wir die besten Plugins f\u00fcr Plattformen wie Magento, PrestaShop, OpenCart und Shopify. Zudem entwickeln und passen wir Module individuell f\u00fcr Websites und Onlineshops an. Unser Team bleibt stets auf dem neuesten Stand der Branchentrends und liefert innovative L\u00f6sungen zur Verbesserung der Funktionalit\u00e4t von eCommerce-Websites. Mit einem kundenorientierten Ansatz ist Knowband ein vertrauensw\u00fcrdiger Partner f\u00fcr eCommerce-Plugin-L\u00f6sungen.","url":"https:\/\/www.knowband.com\/blog\/de\/author\/olivia\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/posts\/840912","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/users\/41"}],"replies":[{"embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/comments?post=840912"}],"version-history":[{"count":1,"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/posts\/840912\/revisions"}],"predecessor-version":[{"id":840929,"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/posts\/840912\/revisions\/840929"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/media\/840928"}],"wp:attachment":[{"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/media?parent=840912"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/categories?post=840912"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/de\/wp-json\/wp\/v2\/tags?post=840912"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}