Код: Выделить всё
com.oracle.database.jdbc
ojdbc11
23.3.0.23.09
Код: Выделить всё
String sql = """
INSERT INTO
MY_TABLE (
COL1,
COL2,
COL3)
VALUES (?, ?, ?)
""";
jdbcTemplate.update(sql, param1, param2, param3/* may be NULL*/);
< strong>Это не проблема БД: Я проверил в БД (SqlDeveloper), что все INSERT как с NULL, так и без них в этом столбце одинаково быстры непосредственно в БД, поэтому мы можем исключить БД.
Поскольку Oracle рассматривает пустые строки как NULL, мы нашли хорошее решение: просто передайте пустую строку вместо NULL:
Код: Выделить всё
(param3 == null ? "" : param3)Подробнее здесь: https://stackoverflow.com/questions/790 ... ance-issue
Мобильная версия