When creating a procedure in Informix 12.10 I got a "Syntax error", so I reduced the procedure to the minimum, and it seems that Informix doesn't like "DEFINE":
CREATE PROCEDURE migrate_table()
DEFINE f_number INTEGER;
END PROCEDURE;
This throws
Error occurred during SQL script execution Razón: SQL Error [42000]: A syntax error has occurred.
But if I execute:
CREATE PROCEDURE migrate_table()
END PROCEDURE;
I get no errors...
delimiter /
CREATE PROCEDURE migrate_table()
DEFINE f_number INTEGER;
END PROCEDURE;
/
select all, and execute.. (in dbeaver)