3

MySql DB に YYYY-mm-dd hh:mm:ss 形式で日付を挿入する際に問題に直面しています。DBにファイルされているのはdatetime型です。

私はそれを試してみました :

Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.set(Calendar.MINUTE, startMinute);
calendar.set(Calendar.SECOND,01);
Date startTime = calendar.getTime();

String hqlUpdate = "update challenge set start_time = :startTime where challenge_id =  :id";
sessionFactory.getCurrentSession().createSQLQuery(hqlUpdate)
                                 .setDate("startTime", startTime)
                                 .setInteger("id", id).executeUpdate();
4

3 に答える 3

0

ここでは、休止状態に渡す前に、simpleDateFormat を使用して日付オブジェクトをフォーマットしようとしました。これが機能するかどうかを確認してください。

DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.set(Calendar.MINUTE, startMinute);
calendar.set(Calendar.SECOND,01);
Date startTime = dateFormat.parse(dateFormat.format(calendar.getTime();));

String hqlUpdate = "update challenge set start_time = :startTime where challenge_id =  :id";
sessionFactory.getCurrentSession().createSQLQuery(hqlUpdate)
                             .setDate("startTime", startTime)
                             .setInteger("id", id).executeUpdate();
于 2012-05-08T08:59:05.097 に答える
0

setParameter()代わりに使用するとうまくいきsetDate()ます...

于 2015-07-14T04:22:16.573 に答える