- ベストアンサー
データベースからの日付データの取得について。
JBuilder6の中での話しなのですが、 SQLSERVERのdatetime型のデータをClassの中で取得しようと思い、以下のようにしましたがうまく時間の部分が取得できません。 DateFormat df = DateFormat.getTimeInstance(); //日時項目からデータの取得 GetDate=df.format(rs.getDate("日時")); 例えば「2002/07/11 12:40:40」というデータがあった場合、 GetDateの中身は「2002/07/11 00:00:00」になってしまいます。 なにがいけないのでしょうか。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
getDate(String columnName)では、時刻情報を取れないと思ったので、getTimestamp(String columnName) の方を使ってみては? ただし、戻り値がTimestamp型になってしまうので、考慮が必要です。 Date dt = rs.getDate("日付") だったら、 Date dt = new Date((rs.getTimestamp("日付")).getTime()); とかしないといけないのかな・・・。
その他の回答 (1)
- hameggs
- ベストアンサー率38% (8/21)
反則技かもしれませんが・・・・・ たしか、このテのデータって実は「rs.getString("日時")」でStringとして取ってこれたような・・・。 Stringで取ってきてから、java.sql.Dateクラスの「valueOf」をつかってDate型に戻せばOKかもしれません。 つい先日この方法を使ったような記憶があるので大丈夫だとは思いますが、できなかったら申し訳ありません。
お礼
たしかにStringでやれば全部とれますねぇ~。 ありがとうございました。
お礼
いや~、getDateをgetTimestampにしたらうまくいきましたよ~♪ 本当にどうもありがとうございました。