[gelöst] Was tun mit field_deleted_data - Tabellen?
am 21.12.2013 - 18:53 Uhr in
Ich habe ein umfangreiches Drupal-Projekt mit allen Modulen und Inhaltstypen kopiert, um ein ähnliches neues Projekt zu erstellen.
Einen einzigen Inhaltstyp kann ich im neuen Projekt nicht brauchen.
Ich habe deshalb im Backend alle Inhalte und den Typ selbst gelöscht.
Danach habe ich die zugehörigen Tabelle field_deleted_data_* gelöscht, die bei dem Vorgang entstanden waren.
Das hat erst mal gut ausgesehen.
Nun lege ich einen neuen Inhaltstyp an und habe dort ein Feld gelöscht, welches mit falschem Feldtyp angelegt wurde.
Das Feld wurde zwar korrekt gelöscht, es kommt aber zu folgender Fehlermeldung:
PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'field_deleted_data_19' doesn't exist: SELECT field_deleted_data_190.entity_type AS entity_type, field_deleted_data_190.entity_id AS entity_id, field_deleted_data_190.revision_id AS revision_id, field_deleted_data_190.bundle AS bundle FROM {field_deleted_data_19} field_deleted_data_190 WHERE (field_deleted_data_190.deleted = :db_condition_placeholder_0) AND (field_deleted_data_190.bundle = :db_condition_placeholder_1) LIMIT 10 OFFSET 0; Array ( [:db_condition_placeholder_0] => 1 [:db_condition_placeholder_1] => mein-weggelöschter-typ ) in field_sql_storage_field_storage_query()
Ich kann zwar ansonsten keine Probleme feststellen, aber frage mich jetzt doch, ob es evt. keine so gute Idee war, diese 'field_deleted_data_* Tabellen einfach zu löschen.
Kann mir jemand sagen, was ich noch tun muß, um evt. Bezüge auf diesen Inhaltstyp sauber zu entfernen?
Oder ist das grundsätzlich nicht sauber möglich?
Muß ich mit weiteren Problemen rechnen, wenn ich die Fehlermeldung ignoriere?
- Anmelden oder Registrieren um Kommentare zu schreiben
Im Normalfall kümmert sich
am 21.12.2013 - 23:27 Uhr
Im Normalfall kümmert sich der Cron-Job um das Entfernen der field_deleted_data_* bzw. field_deleted_revision* Tabellen.
Direkt in der Datenbank solltest du in Drupal eigentlich nicht "rum fuhrwerken" - darum kümmern sich die Module eigentlich selbst ;). Auch das Löschen von Inhaltstypen kann über admin/structure/types erfolgen. Für zukünftige "Seitenkopieraktionen" solltest du dich einmal mit dem [do:features] Modul befassen. Dies erlaubt es Teile der Konfiguration direkt aus einer Drupalseite zu exportieren, um diese dann in anderen Seiten weiterzuverwenden.
Wenn du noch ein Datenbankbackup der eigentlichen Seite hast, solltest du den Kopiervorgang noch einmal wiederholen und dann die Inhaltstypen sauber löschen. Alternativ könntest du dir die Konfiguration auch als Feature exportieren und in der neuen Seite nutzen.
SteffenR
Hallo SteffenR, Du hast ja
am 22.12.2013 - 13:39 Uhr
Hallo SteffenR,
Du hast ja sowas von recht.
Normal mache ich das nie mit dem Pfuschen in der Datenbank.
Das Löschen des Inhaltstyps habe ich im Backend gemacht.
Dabei wurden ja die tabellen wohl auch angelegt.
Inzwischen ist der Cron gelaufen und der genannte Fehler tritt nicht mehr auf.
Das mit Feature ist ein guter Tipp.
Das werde ich das nächste Mal in so einem Fall ausprobieren.
Gruß, Lissy