Skip to main content
Solved

SQLExecutor fails with BETWEEN statement

  • December 23, 2025
  • 2 replies
  • 44 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 

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
  • December 23, 2025

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+61
  • Evangelist
  • December 23, 2025

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).