sql >> Databasteknik >  >> RDS >> Mysql

WordPress MySQL SQL-frågefel i WPDB-klass

WordPress-plugin-användare eller externa skriptutvecklare kan stöta på problem när de försöker utföra frågor eller manipulera MySQL-databasen genom att använda $wpdb-klassen, en klass av funktioner för alla databasmanipulationer baserade på ezSQL. $wpdb WordPress-klassen ger ett enkelt sätt att komma åt databastabeller utan att manuellt behöva koda databasanslutningssyntaxen i PHP igen. $wpdb tillhandahåller flera funktioner för att komma åt, hämta, välja, ta bort, uppdatera eller manipulera data i databasen som query, get_var, get_row, get_col, get_results, escape, show_errors, hide_errors, get_col_info och flush.

När du använder dessa $wpdb för att analysera SQL-satser som i plugin-program eller externa skript eller till och med WordPress-koden i sig kan följande fel eller liknande fel visas.

WordPress-databasfel:[Du har ett fel i din SQL-syntax; kontrollera manualen som motsvarar din MySQL-serverversion för rätt syntax att använda nära 'ORDER BY post_date ASC LIMIT 1' på rad 1]
VÄLJ ID, post_title FROM wp_posts WHERE post_date> ” AND post_date <‘2006-08-28 09:03:57’ AND post_status =‘publish’ AND ID !=BESTÄLL EFTER post_date ASC LIMIT 1

eller (följande från bsuite B2V6),

WordPress-databasfel:[Du har ett fel i din SQL-syntax; kontrollera manualen som motsvarar din MySQL-serverversion för rätt syntax att använda nära ’s pages’ ELSE LEFT(b.post_title, 60) END AS title, SUM(a.hits_reads) AS sor’ på rad 4]
SELECT a.post_id AS post_id, CASE WHEN b.post_title IS NULL THEN 'Alice's Home' ANDERS 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(NU()) – 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 PÅ (a.post_id =b.ID) WHERE bstat_date> '2006-08 -03′ GROUP BY a.post_id ORDER BY sort_order DESC LIMIT 5

En av anledningarna till felen orsakas av post_ID eller ID-variabel som representerar ID:t för WordPress-inlägget. Beroende på vilken version av PHP, MySQL eller WordPress du använde, kan $post_id eller $id eller $post->ID placeras inom ett citattecken (‘) som en lösning eller lösning för att undvika eller lösa felet.


  1. Ersätt en sträng med en annan sträng i SQL Server (T-SQL)

  2. Hur pratar Access med ODBC-datakällor? Del 3

  3. Använda Percona Audit Log Plugin för databassäkerhet

  4. Hur vet jag om min PostgreSQL-säkerhetskopia är bra?