SQLplus/JSP-INSERT Дата рождения как формат даты
im обновлять таблицу базы данных с помощью SQLPlus со страницы JSP с именем и датой рождения, как вставить дату рождения в формат даты? Пожалуйста, помогите мне.
String dob=request.getParameter("DOB");
SimpleDateFormat formater = new SimpleDateFormat("dd-MM-yyyy");
Date result = formater.parse(dob);
stmt.executeUpdate("INSERT INTO table(DOB)VALUES('"+result+"')");
и мой тип переменной в таблице - "Дата".
Здесь вы не используете sqlplus. Вы используете JDBC.
Дата - дата. Это не строка. Sqlplus показывает вам дату как строку, отформатированную определенным образом, чтобы сделать ее доступной для чтения, но вы не должны преобразовывать даты в строки для их хранения. Используйте PreparedStatement:
String dob = request.getParameter("DOB");
SimpleDateFormat formater = new SimpleDateFormat("dd-MM-yyyy");
java.util.Date dateOfBirth = formater.parse(dob);
String sql = "insert into table (dob) value (?)";
PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setDate(1, new java.sql.Date(dateOfBirth.getTime());
stmt.executeUpdate();
PreparedStatement всегда должен использоваться для передачи динамических параметров в SQL-запрос. Это безопаснее, надежнее и избегать атак SQL-инъекций.
Прочтите учебник JDBC о подготовленных операциях.