MyBB.de Forum
Tabelle der Datenbank kopieren klappt nicht - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Sonstiges (https://www.mybb.de/forum/forum-1.html)
+--- Forum: Programmierung (https://www.mybb.de/forum/forum-32.html)
+--- Thema: Tabelle der Datenbank kopieren klappt nicht (/thread-35892.html)



Tabelle der Datenbank kopieren klappt nicht - Allack - 31.08.2018

Hallo zusammen!

Ich habe eine Seite erstellt, bei deren Aufruf Daten von einer Schnittstelle abgerufen und in eine eigene Tabelle in der Datenbank gespeichert werden. Das klappt auch wunderbar.

Nun möchte ich diese Seite so erweitern, dass vor dem Schreiben in die Tabelle der gesamte Inhalt in eine weitere Tabelle mit exakt gleicher Struktur kopiert wird, um anschließend einen Vergleich der beiden Datenstände zu machen.
Dazu lösche ich zunächst den Inhalt der zweiten Tabelle, kopiere dann den Inhalt von der ersten zur zweiten Tabelle, lösche dann den Inhalt der ersten Tabelle und hole dann die Daten von der Schnittstelle und speicher diese.

Das Löschen funktioniert. Beim kopieren kommt allerdings folgende Fehlermeldung:

Zitat:
MyBB SQL Error
MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1064 - 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 'INSERT INTO `rf39_radioearn_last` SELECT * FROM `rf39_radioearn_current`' at line 1
Query:
INSERT INTO `rf39_radioearn_last` SELECT * FROM `rf39_radioearn_current`


Das komische: kopiere ich den Query aus der Fehlermeldung und führe ihn in phpMyAdmin aus, funktioniert er wie gewünscht.

Ich bin jetzt völlig ratlos und meine Suche nach einem Ansatz oder gar einer Lösung war total erfolglos. Habt ihr Ideen, was mein Problem sein könnte?

Vielen Dank im voraus!


RE: Tabelle der Datenbank kopieren klappt nicht - bv64 - 31.08.2018

beim INSERT musst du doch nicht SELECT * FROM noch nutzen, da kommen dann nur die Werte, die du einfügen willst

sorry, Blödsinn Wink geht natürlich doch


RE: Tabelle der Datenbank kopieren klappt nicht - Allack - 31.08.2018

Danke für Deine Antwort Smile
Der Query an sich funktioniert, nur eben nicht, wenn ich ihn über $db->write_query ausführen möchte.


RE: Tabelle der Datenbank kopieren klappt nicht - bv64 - 31.08.2018

poste doch mal die komplette php-Zeile/n mit der Query, vielleicht sieht man dann mehr


RE: Tabelle der Datenbank kopieren klappt nicht - Allack - 31.08.2018

Folgende drei Befehle sollen nacheinander durchgeführt werden. Der erste und der letzte funktionieren (hab ich getestet durch Auskommentieren des mittleren). Der mittlere bringt die Fehlermeldung aus Post 1.
PHP-Code:
// DB "last" leeren
$query "DELETE FROM `".TABLE_PREFIX."radioearn_last`";
$db->write_query($query);

// DB "current" in "last" verschieben
$query "INSERT INTO `".TABLE_PREFIX."radioearn_last` SELECT * FROM `".TABLE_PREFIX."radioearn_current`";
$db->write_query($query);

// DB "current" leeren
$query "DELETE FROM `".TABLE_PREFIX."radioearn_current`";
$db->write_query($query);