WordPress MySQL SQL Query Error in WPDB Class

WordPress plug-ins users or external scripts developers may encounter problems on when trying to perform query or manipulation on MySQL database by using $wpdb class, a class of functions for all database manipulations based on the ezSQL. $wpdb Wordpress class provides easy way to access to database tables without the need to manually code the database connection syntax in PHP again. $wpdb provides several functions to access, retrieve, select, delete, update or manipulate the data in the database such as query, get_var, get_row, get_col, get_results, escape, show_errors, hide_errors, get_col_info, and flush. When using these $wpdb to parse SQL statements as in plug-ins or external scripts or even Wordpress code itself the following error or similar error may appear.

WordPress database error: [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 'ORDER BY post_date ASC LIMIT 1' at line 1]
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

or (the following from bsuite B2V6)

WordPress database error: [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 ’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), ‘, Avg: ‘, 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

One of the reason for the errors is caused by post_ID or ID variable that represent the ID of the Wordpress post. Depending on which version of PHP, MySQL or WordPress you used, the $post_id or $id or $post->ID can be placed within single quote (’) as the workaround or resolution to avoid or solve the error.

Share and contribute or get technical support and help at My Digital Life Forums.



One Response to “WordPress MySQL SQL Query Error in WPDB Class”

  1. casey bisson
    April 16th, 2007 22:11
    1

    I’ve let these errors persist for way too long, but now they’re fixed along with a bunch of other bugs.

    The latest version also lays the groundwork to transition to bsuite3, a ground-up rewrite and re-architecting of the plugin.

    http://maisonbisson.com/blog/post/11613/

Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe without commenting


Custom Search

New Articles

Incoming Search Terms for the Article

$wpdb->query - mysql get_col - $wpdb class - sum and text format in a query mysql - wordpress updating the database with a query - wordpress mysql query - apache mysql password error wordpress - danish sql query - sql query in wordpress - sum SQL syntax - wordpress post query sql - apache2 error "MySQL Query" mysql - SQL query , title , MYSQL - mysql sql error - wordpress error connection wpdb - wordpress use database wpdb - wordpress mysql error - wpdb php class - mySQL query in wordpress - WordPress database error: [You have an error in your SQL syntax - wpdb error - wpdb sql - SQL query response Limit - wordpress plugin database $wpdb - wpdb custom tables - enable error checking and log all the SQL queries - mysql get_col get_results - wordpress mysql external -