Сначала я возьму значение даты в качестве входной переменной из базы данных. Формат даты представлен в формате (2020-08-31).
Мне нужно преобразовать эту дату и передать ее в блок PL- SQL в формате, как показано ниже .
to_date ('31082020', 'ddmmyyyy')
Чтобы получить указанный выше формат, я выполнил преобразование, используя java, как показано ниже.
// Converting the date format for the required type for PL-SQL block
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("ddMMyyyy");
String modifiedDate = simpleDateFormat.format(processingDate);
String modifiedDateParameter = "to_date(\'"+modifiedDate+"\','ddmmyyyy')";
Теперь я передам указанный выше параметр modifiedDateParameter моему блоку PL- SQL в качестве входного параметра. Код для этого приведен ниже. Здесь SQL - это процедура, которую я буду вызывать.
callableStatement = conn.prepareCall (SQL); callableStatement.setDate (1, java. sql .Date.valueOf (billEndDate)); callableStatement.executeUpdate ();
Однако я получаю исключение ниже.
Исключение в потоке «main» java .lang.IllegalArgumentException в java .sql / java. sql .Date.valueOf (Date. java: 141)
Могу я узнать, как что модификация, которую мне нужно сделать, чтобы исправить эту проблему, пожалуйста?