
The "parser" of compare cannot handle the following: prepare stmt1 from " with t as (select a from t1 where b >= 'c') select * from t2,t where t2.c=t.a; "; That is, that a line *not* terminating the full statement (the line 'select * from t2,t where t2.c=t.a;' above) ends with a ';'. Thus, it needs to be changed into e.g. prepare stmt1 from " with t as (select a from t1 where b >= 'c') select * from t2,t where t2.c=t.a;";