There are basically two reasons: Jaybird doesn't support `setArray` (in
fact, it doesn't support arrays at all), and even if it did, Firebird
doesn't support arrays in `IN` (in fact, arrays are hardly usable at all
in DSQL and PSQL).
A year ago there was some talk[1] about even deprecating and eventually
removing array support from Firebird entirely, though for now the
decision is to keep the status quo.
At this point of time, I myself won't add array support to Jaybird. Both
the Firebird and JDBC parts are pretty complex, and given the limited
usability of arrays in Firebird, I don't want to invest time and energy
in it.
I might consider pull requests providing an implementation of arrays[2],
but that wouldn't help with this particular case.
In the meantime, I'd recommend looking at alternative solutions, like
[3] and [4] (though some of this solutions will not work in Firebird).
Mark
[1]:
https://sourceforge.net/p/firebird/mailman/firebird-devel/thread/10e2f3c9-f8d2-00a4...@yandex.ru/
[2]:
https://github.com/FirebirdSQL/jaybird/issues/149
[3]:
https://stackoverflow.com/questions/3107044/preparedstatement-with-list-of-parameters-in-a-in-clause
[4]:
https://stackoverflow.com/questions/178479/preparedstatement-in-clause-alternatives
--
Mark Rotteveel