Skip to main content
Solved

SQLExecutor fails with BETWEEN statement

  • Dec 23, 2025 11:15 AM UTC
  • 2 replies
  • 117 views

kateaew
Contributor
Forum|alt.badge.img+11

FME Form 2025.1

SQL Query in SQLExecutor:
 

SELECT * FROM table_name WHERE ID BETWEEN $(polystart) AND $(polyend);

Oracle table

Works fine in DBeaver with actual ID numbers
Fails in FME with actual ID numbers
Fails in FME with User Parameters for the numbers

Error Message:
Execution of statement `SELECT * FROM table_name WHERE ID BETWEEN 35480 AND 35484;' did not succeed; error was `ORA-00933: SQL command not properly ended'.

Does FME just hate a BETWEEN statement?

Going mad trying to figure out where I am going wrong 😂

Best answer by kateaew

I added FME_SQL_DELIMITER ; and removed the last semi colon of the statement and it has worked

For anyone who comes across something similar in the future 

View original
This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

2 replies

kateaew
Contributor
Forum|alt.badge.img+11
  • Author
  • Contributor
  • Best Answer
  • Dec 23, 2025 11:29 AM UTC

I added FME_SQL_DELIMITER ; and removed the last semi colon of the statement and it has worked

For anyone who comes across something similar in the future 


geomancer
Evangelist
Forum|alt.badge.img+69
  • Evangelist
  • Dec 23, 2025 12:47 PM UTC

Just removing the semicolon should be enough, in this case there is no need to add FME_SQL_DELIMITER (tested with FME 2023.1.1 / Oracle 19).