Для длинной строки используйте PreparedStatement::setAsciiStream()
вместо PreparedStatement::setString()
.
Но когда я использую поток, я часто сталкиваюсь с ошибкой «Неверное значение точности HY104», что раздражает, потому что я понятия не имею, как его решить, но я обхожу его с помощью следующих шагов:
1, order the columns in SQL statement, non-stream columns go first;
2, if that doesn't work, split the statement to multiple ones, update or query a single column per statement.
Но (опять же), чтобы сначала вставить строку, а затем обновить некоторые столбцы в потоковом режиме, может потребоваться получить последний идентификатор вставки, что, оказывается, является еще одной проблемой, которую я снова не смог решить для головы сейчас ...