MetaModels Workshop in Berlin
Ergebnis 1 bis 9 von 9

Thema: SQL-Error beim Versuch einen Katalog zu kopieren!

  1. #1
    Contao-Urgestein Avatar von Thomas
    Registriert seit
    16.08.2009.
    Ort
    Visselhövede
    Beiträge
    1.947
    User beschenken
    Wunschliste

    Standard SQL-Error beim Versuch einen Katalog zu kopieren!

    Guten Morgen.

    Ich bekomme, beim Versuch einen Katalog zu kopieren, folgenden Syntaxerror von SQL:
    Code:
    Fatal error: Uncaught exception Exception with message Query error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'maxValue, format, formatFunction, formatStr, formatPrePost, uniqueItem, rte, rte' at line 1 (INSERT INTO tl_catalog_fields (pid, sorting, tstamp, name, description, colName, type, titleField, aliasTitle, filteredField, insertBreak, legendTitle, legendHide, width50, sortingField, groupingMode, searchableField, parentCheckbox, mandatory, includeBlankOption, parentFilter, calcValue, defValue, minValue, maxValue, format, formatFunction, formatStr, formatPrePost, uniqueItem, rte, rte_editor, allowHtml, textHeight, itemTable, itemTableValueCol, itemSortCol, limitItems, items, childrenSelMode, itemFilter, includeTime, multiple, sortBy, showLink, showImage, imageSize, customFiletree, uploadFolder, validFileTypes, filesOnly, editGroups, treeMinLevel, treeMaxLevel, userhdsbfield) VALUES (18, '128', 1332482879, 'Pl.', 'Hier kann die Platzierung angegeben werden!', 'ranking', 'number', '1', '', '', '', '', '', '', '', '11', '', '', '1', '', '', NULL, '', '1', '999', '', '', '', 'a:2:{i:0;s:0:\"\";i:1;s:0:\"\";}', '1', '', 'tinyMCE', '', '0', '', '', '', '', NULL, 'treeAll', NULL, '', '', '', '', '', '', '', '', '', '', NULL, NULL, NULL, NULL)) thrown in ../htdocs/system/libraries/Database.php on line 689
    
    #0 ../htdocs/system/libraries/Database.php(636): Database_Statement->query()
    #1 ../htdocs/system/drivers/DC_Table.php(969): Database_Statement->execute()
    #2 ../htdocs/system/drivers/DC_Table.php(861): DC_Table->copyChilds('tl_catalog_type...', 18, '10', 18)
    #3 ../htdocs/system/modules/backend/Backend.php(271): DC_Table->copy()
    #4 ../htdocs/contao/main.php(101): Backend->getBackendModule('catalog')
    #5 ../htdocs/contao/main.php(286): Main->run()
    #6 {main}
    Selbiges passiert, wenn ich Felder aus einem Katalog in einen Anderen kopieren möchte.

    Ich nutze den aktuellen catalog aus dem Repo
    Geändert von Thomas (23.03.2012 um 06:17 Uhr)
    Gruß Thomas
    "Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du." Mahatma Gandhi

  2. #2
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.117
    User beschenken
    Wunschliste

    Standard

    Hallo Thomas,
    könntest du das mal mit der Version aus dem SVN testen?
    Wenns da auch Probleme gibt, dann mach doch bitte ein Ticket.

    Zur schnellen Lösung für dich: Machs per CSV Export über phpmyadmin ;-)

    Viele Grüße

  3. #3
    Contao-Urgestein Avatar von Thomas
    Registriert seit
    16.08.2009.
    Ort
    Visselhövede
    Beiträge
    1.947
    User beschenken
    Wunschliste

    Standard

    Ich schaue mir das später mal an!

    Ich habe den Katalog jetzt erst mal wieder von Hand angelegt und die Daten kommen eh über CSV rein.
    Leider stecke ich gerade in einem ganz anderen Problem, was nichts mit dem catalog zu tun hat.

    Trotzdem erst mal Danke.
    Gruß Thomas
    "Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du." Mahatma Gandhi

  4. #4
    Contao-Nutzer
    Registriert seit
    27.03.2012.
    Beiträge
    1

    Standard Hab auch Probleme mit der "Kopier-Funktion" des catalogs

    Hi ich hab auch Probleme beim Kopieren festgestellt.

    Das Kopieren des Kataloges oder auch einzelner Felder wirft Fehlermeldungen auf meinem
    xampp - Windows - System aus.

    Hab das ganze unter verschiedenen xampp Versionen getestet und siehe da mit xampp 1.7.3
    funktioniert alles. Anscheinend funktionieren die älteren MySQL und PHP Versionen.
    Da auf meinem Server auch ältere Versionen laufen - aber was passiert, wenn die Provider
    auf neue Versionen aktualisieren - dann gibts die gleichen Fehlermeldungen wie unter den
    neuen xampp - Installationen.

    Schönen Gruß

    Boinker

  5. #5
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.117
    User beschenken
    Wunschliste

    Standard

    Hallo Boinker,
    dann kann ich mich nur wiederholen:
    Bitte mit der aktuellen SVN-Version testen. Wenns da auch nicht geht, dann bitte ein Ticket schreiben (wenn noch keins erstellt wurde) -> http://www.contao-forge.org/projects...1&per_page=100

    Viele Grüße

  6. #6
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.039
    User beschenken
    Wunschliste

    Standard

    Kämpfe mich jetzt seit ca. 1 Stunde damit rum, dass ich mir die aktuelle SVN Version ziehen kann. Leider ist das Problem anscheinend immernoch da. Beim Kopieren eines Katalogs erhalte ich einen SQL Error.

    Ticket hab ich grad erstellt, weil es wohl bisher niemand gemacht hat :-)
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  7. #7
    Contao-Nutzer
    Registriert seit
    12.10.2011.
    Beiträge
    5

    Lachendes Gesicht SQL-Error beim Versuch einen Katalog zu kopieren!

    Hallo Zusammen,

    genau gleiches Problem. Kann den Katalog auch nicht kopieren. Title- Umbenennung (BE) geht genauso wenig wie Tabellennamen im Backend zu ändern. Auch das Problem mit den URL's hab ich noch. Schade das ist so eine klasse Extension, aber schon ewig im Beta Status? Wann kommt das wirklich funktionierende Release?

    Viele Grüße
    jazzy251

  8. #8
    Contao-Nutzer
    Registriert seit
    06.10.2009.
    Beiträge
    141

    Standard

    Hallo.
    Gibt es da schon eine Lösung für??

  9. #9
    Contao-Fan Avatar von Arno
    Registriert seit
    11.12.2009.
    Ort
    Hamburg
    Beiträge
    268

    Standard

    Ich weiß nicht, ob es außer mir noch Leute gibt, die noch mit dem alten Catalog arbeiten.
    Ich habe aber für ein Projekt eine inzwischen hochgradig angepasste Version vom Catalog laufen, die ich selber immer noch erweitere und anpasse.
    Dabei bin ich auf auch auf diesen Fehler gestoßen und habe heute eine Lösung dafür gefunden und eingebaut.

    Vorneweg sei gesagt, dass man dafür auf jeden Fall an die Core-Dateien des Catalogs ran muss, dass macht aber nicht wirklich was, da der ja nicht mehr aktualisiert wird und so ein Überschreiben der Änderungen nicht passieren kann.

    Nun zur Lösung:
    Der Fehler wird verursacht durch das Feld "maxValue". Das darf nämlich nicht so heißen. Der Name ist von MySQL reserviert und darf für Felder nicht vergeben werden. Deshalb schmiert er beim kopieren an der Stelle ab. Die Fehlermeldung gibt diese Information nicht wirklich her. Google war mein Freund.

    Also bin ich rangegangen und habe einfach in der Datenbank direkt in der Tabelle "tl_catalog_fields" den Namen des Feldes auf "maxVal" geändert.
    Dann habe ich die Catalog-Dateien nach "maxValue" durchsucht und jedes Vorkommen des Strings einfach in "maxVal" geändert.
    Betroffen sind folgende Dateien:
    • Catalog.php
    • config/database.sql
    • ModuleCatalog.php
    • dca/tl_catalog_fields.php
    • sowie die Language-Files "tl_catalog_fields.php"

    Danach kann man dann noch mal prüfen, ob die Datenbank aktuell ist, das sollte aber der Fall sein, da man ja auch in der "database.sql" den Feldnamen entsprechend geändert hat.

    Dann sollte es möglich sein Kataloge und Felder zu kopieren, ohne die Fehlermeldung zu bekommen.

    Anmerkung:
    Beim Kopieren eines Kataloges mit dem Standard-Kopieren-Button werden nur die Felddefinitionen und Eigenschaften des Katalogs kopiert.
    In meinem Fall war es so, dass ich auch gerne die bereits angelegten Katalog-Items mit kopiert haben wollte.
    Das war etwas komplizierter. Ich habe dafür einen neuen Button im Backend eingebaut und einen Onsubmit Callback geschrieben, der sich um das Kopieren der Daten von der Quell- in die Zieltabelle kümmert.
    Wenn jemand Interesse an dem Code für den Callback hat, dann bitte einfach per PM oder hier im Thread melden. Der Code ist allerdings für Contao 3 geschrieben (ich habe mir den Catalog nach Contao 3 gehoben), der sollte aber relativ einfach (ich glaube das betrifft nur die Datenbankanweisungen) für Contao 2 anzupassen sein.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •