sql >> Base de Datos >  >> RDS >> Mysql

Error de consulta SQL MySQL de WordPress en la clase WPDB

Los usuarios de complementos de WordPress o los desarrolladores de scripts externos pueden encontrar problemas al intentar realizar una consulta o manipulación en la base de datos MySQL mediante el uso de la clase $wpdb, una clase de funciones para todas las manipulaciones de bases de datos basadas en ezSQL. La clase $wpdb de WordPress proporciona una manera fácil de acceder a las tablas de la base de datos sin necesidad de codificar manualmente la sintaxis de conexión de la base de datos en PHP nuevamente. $wpdb proporciona varias funciones para acceder, recuperar, seleccionar, eliminar, actualizar o manipular los datos en la base de datos, como consulta, get_var, get_row, get_col, get_results, escape, show_errors, hide_errors, get_col_info y flush.

Al usar estos $wpdb para analizar declaraciones SQL como complementos o scripts externos o incluso el código de WordPress, puede aparecer el siguiente error o un error similar.

Error de la base de datos de WordPress:[Tiene un error en su sintaxis SQL; consulte el manual que corresponde a la versión de su servidor MySQL para conocer la sintaxis correcta para usar cerca de 'ORDER BY post_date ASC LIMIT 1' en la línea 1]
SELECCIONE ID, post_title DESDE 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

o (lo siguiente de bsuite B2V6),

Error de la base de datos de WordPress:[Tiene un error en su sintaxis SQL; consulte el manual que corresponde a la versión de su servidor MySQL para conocer la sintaxis correcta para usar cerca de las páginas de 'ELSE LEFT (b.post_title, 60) END AS title, SUM (a.hits_reads) AS sor' en la línea 4]
SELECCIONE a.post_id COMO post_id, CASO CUANDO b.post_title ES NULL ENTONCES '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), ', Promedio:', FORMAT((SUM(a.hits_reads)) / ((TO_DAYS(NOW()) – TO_DAYS(MIN(a.bstat_date))) + 1), 0), ', Max:', FORMAT(MAX(a.hits_reads), 0), '') COMO nota DESDE wp_bstat_hits a LEFT JOIN wp_posts b ON (a.post_id =b.ID) DONDE bstat_date> '2006-08 -03′ GRUPO POR a.post_id ORDEN POR sort_order DESC LÍMITE 5

Una de las razones de los errores es causada por post_ID o la variable ID que representa la ID de la publicación de WordPress. Según la versión de PHP, MySQL o WordPress que haya utilizado, el $post_id o $id o $post->ID se puede colocar entre comillas simples (') como solución o solución para evitar o resolver el error.