Mysql
 sql >> Database >  >> RDS >> Mysql

Errore di query SQL MySQL di WordPress nella classe WPDB

Gli utenti dei plug-in di WordPress o gli sviluppatori di script esterni potrebbero riscontrare problemi quando tentano di eseguire query o manipolazioni sul database MySQL utilizzando la classe $wpdb, una classe di funzioni per tutte le manipolazioni del database basate su ezSQL. La classe $wpdb WordPress fornisce un modo semplice per accedere alle tabelle del database senza la necessità di codificare nuovamente manualmente la sintassi della connessione al database in PHP. $wpdb fornisce diverse funzioni per accedere, recuperare, selezionare, eliminare, aggiornare o manipolare i dati nel database come query, get_var, get_row, get_col, get_results, escape, show_errors, hide_errors, get_col_info e flush.

Quando si utilizzano questi $wpdb per analizzare le istruzioni SQL come in plug-in o script esterni o persino nel codice WordPress stesso, potrebbe apparire il seguente errore o un errore simile.

Errore del database di WordPress:[Si è verificato un errore nella sintassi SQL; controlla il manuale che corrisponde alla versione del tuo server MySQL per la sintassi corretta da utilizzare vicino a "ORDER BY post_date ASC LIMIT 1" alla riga 1]
SELECT ID, post_title FROM wp_posts WHERE post_date> ” AND post_date <'2006-08-28 09:03:57' AND post_status ='pubblica' AND ID !=ORDINA PER post_date ASC LIMITE 1

oppure (di seguito da bsuite B2V6),

Errore del database di WordPress:[Si è verificato un errore nella sintassi SQL; controlla il manuale che corrisponde alla versione del tuo server MySQL per la sintassi corretta da usare vicino a 's pages' ELSE LEFT(b.post_title, 60) END AS title, SUM(a.hits_reads) AS sor' at line 4]
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), ', Media:', 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 LIMITE 5

Uno dei motivi degli errori è causato dalla variabile post_ID o ID che rappresenta l'ID del post di WordPress. A seconda della versione di PHP, MySQL o WordPress utilizzata, $post_id o $id o $post->ID possono essere inseriti tra virgolette singole (') come soluzione alternativa per evitare o risolvere l'errore.