Я работаю над модификацией некоторого кода для использования подготовленного состояния вместо обычного оператора по соображениям безопасности и производительности.
Наше приложение в настоящее время хранит информацию во встроенной базе данных derby, но мы скоро перейдем к Oracle.
Я нашел две вещи, в которых мне нужна ваша помощь, ребята, об Oracle и подготовленном заявлении:
1- Я нашел этот документ , в котором говорится, что Oracle не обрабатывает параметры связывания в предложениях IN, поэтому мы не можем предоставить запрос типа:
Select pokemon from pokemonTable where capacity in (?,?,?,?)
Это правда? Есть ли обходной путь? ... Зачем ?
2- У нас есть несколько полей типа TIMESTAMP. Итак, с нашим фактическим оператором запрос выглядит так:
Select raichu from pokemonTable where evolution = TO_TIMESTAMP('2500-12-31 00:00:00.000', 'YYYY-MM-DD HH24:MI:SS.FF')
Что следует сделать для подготовленного заявления? Должен ли я положить в массив параметров:
2500-12-31 или TO_TIMESTAMP ('2500-12-31 00: 00: 00.000', 'ГГГГ-ММ-ДД ЧЧ24: MI: SS.FF')?
Спасибо за вашу помощь, надеюсь, мои вопросы ясны!
С уважением,