Итак, я хочу установить пользовательскую дату вместе с текущим временем в тип DATE в базе данных Oracle.Я получаю строку из textField в виде мм / дд / гггг
String tdate = textDate.getText().trim();
Чтобы упростить детали, давайте просто вставим ДАТУ в небольшую таблицу.
Calendar calendar = Calendar.getInstance();
int hour = calendar.get(Calendar.HOUR);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
String current_time = hour+":"+minute+":"+second;
теперь у нас естьtdate как строка даты и current_time как текущее время.
для помещения в базу данных с таблицей, определенной как:
create table transaction(
tranaction_num integer,
time_of_transaction DATE);
, теперь в jdbc
PreparedStatement pStmt = Conn.prepareStatement("insert into transaction values(?,?));
pStmt.setString(1, "1");
pStmt.setString(2, "to_date( '"+tdate+" "+current_time+"','mm/dd/yyyy hh24:mi:ss')");
pStmt.executeUpdate();
Это дает мне ошибку, как показано ниже
ORA-01858: a non-numeric character was found where a numeric was expected
Я знаю, что делаю что-то не так, но я пытался так много вещей, чтобы заставить это работать.Я не против получить текущее время другим способом, пока оно работает
Любая помощь будет оценена