Zum Inhalt springen

typo3 umzug - sql fehler

Erstellt am 30. November 2010 · 4 Antworten · letzte Antwort am 1. Dezember 2010

Tags: Frage

anonymous ·

Hallo,
versuche gerade eine typo3-instanz von einer xampp-umgebung auf einen "echten" webserver umzuziehen.
Hierfür habe ich einfach den typo3-ordner in htdocs des zielapaches kopiert.
Dann über "phpmyadmin - exportieren" die Datenbank in eine .sql-Datei exportiert und auf dem Zielserver in eine Datenmbank gleichen namens über "phpmyadmin - importieren" importiert.
In der Localconf.php habe ich dann typo_db und username und passwort entsprechend angepasst.

Das frontend erscheint auch und auch grundsätzlich das backend.
Versuche ich aber auf dem Server irgendwelche Änderungen in TYPO3 vorzunehmen (z.b. einfach nur ein Inhaltselement "text" zu speichern, erscheint die Meldung "sql error: field tx_pagephcontent_phpcode has no default value"
Vergebe ich dem entsprechenden Feld z.b. den Standardwert "null", erscheint die meldung sofort für das nächste feld in tt_content.
In meiner Quellumgebung haben die betroffenen Felder ebenfalls keine Default-werte, unter xampp ist das aber offenbar egal 🙂...
Hat jemand evtl eine idee was da schiefgelaufen sein kann? Muss ich beim export irgendwas beachten oder auf dem Server irgendwas besonders onfigurieren?
Vielen dank für Hilfe.
Andi

Julian.​Hofmann ·

Hallo Andi.

Ein "DB Compare" könnte Dir helfen (Install-tool -> Database Analyser). Dabei prüft TYPO3, ob die Datenbank so angelegt ist, wie sie von TYPO3 bzw. den Extensions deklariert ist - und bietet ggf. das Anpassen an.

Viele Grüße
Julian

anonymous ·

Hallo Julian,
vielen Dank erst mal für die Antwort.
habe den db_compare durchgeführt und damit auch einiges korrigiert.
Leider wirft sql immer noch eine fehlermeldung:
2: SQL error: 'Incorrect integer value: '' for column 'sys_language_uid' at row 1' (tt_content:NEW4cf60aaf10696)
An der bemängelten stelle steht eine 0.
Da ich keine Ahnung habe, was genau diese felder enthalten, experimentiere ich nur ungern mit manuellen Wertänderngen herum 🙂.
Weiß noch jemand Rat?
Vielen dank
Andi

Julian.​Hofmann ·

Hm...

Die Spalte sys_language_uid enthält die Zuordnung des Datensatzes zu einer Sprache. Mit dem Wert 0 sind Datensätze belegt, die in der default-Sprache sind (=0 also auch, wenn gar keine weitere Sprache existiert). Warum jedoch 0 kein gültiger Integer-Wert sein soll... o.O

anonymous ·

ok habe es nun selbst gelöst.
In der my.ini meiner sql-konfiguration habe ich in der Zeile
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
habe ich den Parameter STRICT_TRANS_TABLES entfernt und nun geht es.