Mysql
 sql >> Datenbank >  >> RDS >> Mysql

WordPress MySQL SQL-Abfragefehler in der WPDB-Klasse

Benutzer von WordPress-Plug-Ins oder Entwickler externer Skripte können auf Probleme stoßen, wenn sie versuchen, Abfragen oder Manipulationen an MySQL-Datenbanken durchzuführen, indem sie die Klasse $wpdb verwenden, eine Klasse von Funktionen für alle Datenbankmanipulationen, die auf ezSQL basieren. Die WordPress-Klasse $wpdb bietet eine einfache Möglichkeit, auf Datenbanktabellen zuzugreifen, ohne die Datenbankverbindungssyntax erneut manuell in PHP codieren zu müssen. $wpdb stellt mehrere Funktionen bereit, um auf die Daten in der Datenbank zuzugreifen, sie abzurufen, auszuwählen, zu löschen, zu aktualisieren oder zu manipulieren, wie z

Wenn Sie diese $wpdb verwenden, um SQL-Anweisungen wie in Plug-Ins oder externen Skripten oder sogar WordPress-Code selbst zu parsen, kann der folgende Fehler oder ein ähnlicher Fehler auftreten.

WordPress-Datenbankfehler:[Sie haben einen Fehler in Ihrer SQL-Syntax; Überprüfen Sie das Handbuch, das Ihrer MySQL-Serverversion entspricht, auf die richtige Syntax, um sie in der Nähe von „ORDER BY post_date ASC LIMIT 1“ in Zeile 1 zu verwenden.]
SELECT ID, post_title FROM wp_posts WHERE post_date> ” AND post_date <‘2006-08-28 09:03:57’ AND post_status =‘publish’ AND ID !=ORDER BY post_date ASC LIMIT 1

oder (das Folgende aus bsuite B2V6),

WordPress-Datenbankfehler:[Sie haben einen Fehler in Ihrer SQL-Syntax; Überprüfen Sie das Handbuch, das Ihrer MySQL-Serverversion entspricht, auf die richtige Syntax, um sie in der Nähe von ’s-Seiten zu verwenden.
SELECT a.post_id AS post_id, CASE WHEN b.post_title IS NULL THEN 'Alice's Home' ELSE LEFT(b.post_title, 60) END AS title, SUM(a.hits_reads) AS sort_order, CONCAT('Tot:', FORMAT( SUM(a.hits_reads), 0), ', Durchschnitt:', FORMAT((SUM(a.hits_reads)) / ((TO_DAYS(NOW()) – TO_DAYS(MIN(a.bstat_date))) + 1), 0), ', Max:', FORMAT(MAX(a.hits_reads), 0), '') AS note FROM wp_bstat_hits a LEFT JOIN wp_posts b ON (a.post_id =b.ID) WHERE bstat_date> '2006-08 -03′ GROUP BY a.post_id ORDER BY sort_order DESC LIMIT 5

Einer der Gründe für die Fehler wird durch post_ID oder ID-Variablen verursacht, die die ID des WordPress-Beitrags darstellen. Je nachdem, welche Version von PHP, MySQL oder WordPress Sie verwendet haben, kann die $post_id oder $id oder $post->ID in einfache Anführungszeichen (‘) gesetzt werden, um den Fehler zu umgehen oder zu beheben.