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.

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 to comments feature has been disabled. To receive notification of latest comments posted, subscribe to My Digital Life Comments RSS feed or register to receive new comments in daily email digest.

New Articles

Incoming Search Terms for the Article

wordpress mysql query - Sql 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 - get last error from wpdb - select post category wordpress mysql - 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 ''texte' ORDER BY 'ID'' at line 1 - "that corresponds to your MySQL server version for the right syntax to use near 'service" " - new wpdb +wordpress - wpdb query error - QUERY SQL SELECT post_date DB ACCESS - single quote problem in $wpdb->query - wordpress sql rights - wpdb 2006.ex le site - 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 'Group' at line 1 - wordpress wpdb 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 '(wp_posts.post_status = - you have an error in your sql syntax - wordpress Undefined variable: wpdb - wordpress log sql - wordpress et sql - wpdb mysql select as - WordPress database error MySQL server registration - 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 '' at line 1] - use wpdb outside of wordpress - variable $wpdb wordpress 2.8 -