Rewrites identifier quoting and literal escaping without changing anything else.
The one structural rewrite is CAST(x'..' AS TEXT). SQLite emits that form for a TEXT value
carrying a NUL -- the parser would otherwise end the string literal at the NUL -- and MySQL has no
TEXT cast target at all, so the statement is a syntax error there. A bare hex literal assigned
into a text column stores the same bytes, which is what MySQL wants and what the comparator then
reads back as identical.
Rewrites identifier quoting and literal escaping without changing anything else.
The one structural rewrite is
CAST(x'..' AS TEXT). SQLite emits that form for a TEXT value carrying a NUL -- the parser would otherwise end the string literal at the NUL -- and MySQL has noTEXTcast target at all, so the statement is a syntax error there. A bare hex literal assigned into a text column stores the same bytes, which is what MySQL wants and what the comparator then reads back as identical.