Skip to content

Conversation

@rickalee
Copy link

@rickalee rickalee commented Nov 6, 2025

Fixes issue where MySQL tables with reserved keyword columns (e.g., order) cannot be queried due to missing backtick escaping in generated SQL.

Changes:

  • Add flavor parameter to constructSQLQuery() and efficientConstructSQLQuery()
  • Use flavor.Quote() to properly escape column names based on database type
  • MySQL uses backticks (column), PostgreSQL uses double quotes ("column")
  • Apply escaping to both SELECT columns and ORDER BY clauses

Impact:

Tested:

  • Successfully queried table with 'order' column
  • Verified COUNT, SELECT, and aggregation queries work correctly
  • Tested with 284,909 relationship records

Example working query:
SELECT id1, id2, name FROM connection.post_to_post LIMIT 5

…words

Fixes issue where MySQL tables with reserved keyword columns (e.g., `order`)
cannot be queried due to missing backtick escaping in generated SQL.

Changes:
- Add flavor parameter to constructSQLQuery() and efficientConstructSQLQuery()
- Use flavor.Quote() to properly escape column names based on database type
- MySQL uses backticks (`column`), PostgreSQL uses double quotes ("column")
- Apply escaping to both SELECT columns and ORDER BY clauses

Impact:
- Enables querying WordPress Content Connect tables (wp_post_to_post)
- Fixes queries on any MySQL table with reserved keyword columns
- Similar to PR julien040#57 which fixed PostgreSQL column name handling

Tested:
- Successfully queried wp_post_to_post table with 'order' column
- Verified COUNT, SELECT, and aggregation queries work correctly
- Tested with 284,909 relationship records

Example working query:
  SELECT id1, id2, name FROM msresearch.wp_post_to_post LIMIT 5

Previously failed with:
  Error 1064: syntax error near 'order FROM `local`.`wp_post_to_post`'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant